﻿using Abp.Application.Services.Dto;
using Abp.Domain.Repositories;
using Abp.Extensions;
using Abp.Linq.Extensions;
using Abp.UI;
using ARchGL.Platform.Authorization.Users;
using ARchGL.Platform.Core;
using ARchGL.Platform.Dtos;
using ARchGL.Platform.Utils;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using ARchGL.Platform.Juneng;
using Abp.Domain.Uow;
using Abp.Authorization;
using System.Linq.Dynamic.Core;
using Abp.EntityFrameworkCore.EFPlus;
using ARchGL.Platform.Authorization.Roles;
using ARchGL.Platform.Authorization;
using ARchGL.Platform.IO;
using System.IO;
using Microsoft.Extensions.Configuration;
using ARchGL.Platform.Authorization.Accounts;
using ARchGL.Platform.Qianbian;
using Abp.Events.Bus;
using Microsoft.AspNetCore.Hosting;
using ARchGL.Platform.Mpp;
using Newtonsoft.Json;
using ARchGL.Platform.Mpp.InputModels;
using Npgsql;
using ARchGL.Platform.Configuration;
using ARchGL.Platform.Web;
using System.Data;

namespace ARchGL.Platform.Application
{
    /// <summary>
    /// 文件库 实现
    /// </summary>
    [AbpAuthorize]
    public class DocumentLibrarysAppService : PlatformAppServiceBase, IDocumentLibrarysAppService
    {
        private readonly IConfigurationRoot appConfiguration;
        private readonly IRepository<DocumentLibrarys, Guid> documentLibrarysRepository;
        private readonly IRepository<DocumentShares, Guid> documentSharesRepository;
        private readonly IRepository<ProjectCategoryTemplate, Guid> projectCategoryTemplateRepository;
        private readonly IRepository<ProjectProperties, Guid> projectPropertiesRepository;
        private readonly IRepository<ProjectModelGroups, Guid> projectModelGroupsRepository;
        private readonly IRepository<ProjectModels, Guid> projectsModelsRepository;
        private readonly IMppAppService mppAppService;
        public IEventBus EventBus { get; set; }
        private readonly IHostingEnvironment env;
        public DocumentLibrarysAppService(
            IHostingEnvironment env,
            IRepository<DocumentLibrarys, Guid> _documentLibrarysRepository,
            IRepository<ProjectModelGroups, Guid> _projectModelGroupsRepository,
            IRepository<ProjectModels, Guid> _projectsModelsRepository,
            IRepository<DocumentShares, Guid> _documentSharesRepository, IRepository<NoticesUsers, Guid> _noticesUserRepository,
            IRepository<ProjectCategoryTemplate, Guid> _projectCategoryTemplateRepository,
            IRepository<ProjectProperties, Guid> _projectPropertiesRepository,
            IMppAppService _mppAppService,
            IHostingEnvironment _env)
        {
            appConfiguration = env.GetAppConfiguration();
            projectModelGroupsRepository = _projectModelGroupsRepository;
            projectsModelsRepository = _projectsModelsRepository;
            documentLibrarysRepository = _documentLibrarysRepository;
            documentSharesRepository = _documentSharesRepository;
            projectCategoryTemplateRepository = _projectCategoryTemplateRepository;
            projectPropertiesRepository = _projectPropertiesRepository;
            mppAppService = _mppAppService;
            env = _env;
            EventBus = NullEventBus.Instance;
        }

        #region 文件

        /// <summary>
        /// 创建文件
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<Guid> CreateFile(CreateFileInput input)
        {
            //var filesList = documentLibrarysRepository.GetAllList(x => x.ParentId == input.ParentId && x.PrimaryId == input.PrimaryId);
            //var sameNameList = filesList.Where(x => x.Name == input.Name);
            //if (-1 != input.Name.LastIndexOf("."))
            //{
            //    input.Extension = input.Name.Substring(input.Name.LastIndexOf("."),  input.Name.Length - input.Name.LastIndexOf(".")).ToLowerInvariant(); //获取扩展名
            //    input.Name = input.Name.Substring(0,  input.Name.LastIndexOf(".")); //获取文件名
            //}
            //if (0 != sameNameList.Count())
            //{
            //    var i = 1;
            //    //if (string.Empty != input.Name && string.Empty != input.Extension) input.Name = input.Name;
            //    while (true)
            //    {
            //        //if (0 == filesList.Count(x => x.Name == $"{input.Name}({i}){input.Extension}"))
            //        if (0 == filesList.Count(x => x.Name == $"{input.Name}({i})"))
            //        {
            //            break;
            //        }
            //        i++;
            //    }
            //    //input.Name += $"({i}){input.Extension}";
            //    input.Name += $"({i})";
            //}
            //var entity = ObjectMapper.Map<DocumentLibrarys>(input);
            //entity.CreatorUserId = UserManager.PrimaryId;
            //return await documentLibrarysRepository.InsertAndGetIdAsync(entity);
            var filesList = documentLibrarysRepository.GetAllList(x => x.ParentId == input.ParentId && x.PrimaryId == input.PrimaryId);
            var sameNameList = filesList.Where(x => x.Name == input.Name);
            if (-1 != input.Name.LastIndexOf("."))
            {
                input.Extension = input.Name.Substring(input.Name.LastIndexOf("."), input.Name.Length - input.Name.LastIndexOf(".")).ToLowerInvariant(); //获取扩展名
                input.Name = input.Name.Substring(0, input.Name.LastIndexOf(".")); //获取文件名
            }
            if (0 != sameNameList.Count())
            {
                var i = 1;
                //if (string.Empty != input.Name && string.Empty != input.Extension) input.Name = input.Name;
                while (true)
                {
                    //if (0 == filesList.Count(x => x.Name == $"{input.Name}({i}){input.Extension}"))
                    if (0 == filesList.Count(x => x.Name == $"{input.Name}({i})"))
                    {
                        break;
                    }
                    i++;
                }
                //input.Name += $"({i}){input.Extension}";
                input.Name += $"({i})";
            }
            var entity = ObjectMapper.Map<DocumentLibrarys>(input);

            //获取父级目录
            var parent = await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == entity.ParentId);
            if (parent != null && (int)parent.PType > 20) //工程上报相关，继承父类型
            {
                entity.PType = parent.PType;
            }
            else if (parent != null && input.PType == EnumDocumentPType.子文件)
            {
                entity.PType = input.PType; //检验批子集文件
            }

            entity.CreatorUserId = UserManager.PrimaryId;
            entity.State = false;
            var ret = await documentLibrarysRepository.InsertAndGetIdAsync(entity);
            if (ret != Guid.Empty && !entity.IsFolder) //文件类型则上传
            {
                //ZhuyeAPI + 文件上传
                // await EventBus.TriggerAsync(new UploadFileSyncEvent(EnumDocFolderType.场地布置,  entity));
            }
            return ret;
        }

        /// <summary>
        /// 创建文件夹
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<Guid> CreateFolder(CreateFolderInput input)
        {
            //var folderlist = await documentLibrarysRepository.GetAllListAsync(x => x.PrimaryId == input.PrimaryId &&
            //                                                                  x.ParentId == input.ParentId &&
            //                                                                  x.Name == input.Name);
            //if (folderlist.Any()) throw new UserFriendlyException("文件夹已存在，请重新输入");

            //var entity = ObjectMapper.Map<DocumentLibrarys>(input);
            //entity.CreatorUserId = UserManager.PrimaryId;
            //return await documentLibrarysRepository.InsertAndGetIdAsync(entity);
            var folderlist = await documentLibrarysRepository.GetAllListAsync(x => x.PrimaryId == input.PrimaryId && (!x.FileId.HasValue || x.FileId == Guid.Empty));

            var entity = ObjectMapper.Map<DocumentLibrarys>(input);

            //获取父级目录
            var parent = folderlist.FirstOrDefault(x => x.Id == entity.ParentId);

            DocumentLibrarys result = null;

            if (parent != null && (int)input.PType > 10 && (int)input.PType < 20) //创建检验批下的验收节点
            {
                //是否已存在验收节点
                if (input.PrimaryId1 != Guid.Empty && folderlist.Any(x => x.PrimaryId1 == input.PrimaryId1 && x.TemplateId == input.TemplateId))
                {
                    result = folderlist.FirstOrDefault(x => x.PrimaryId1 == input.PrimaryId1 && x.TemplateId == input.TemplateId);
                }
            }
            else if (folderlist.Any(x => x.ParentId == input.ParentId && x.Name == input.Name && x.Id != input.Id)) throw new UserFriendlyException("文件夹已存在，请重新输入");
            else if (parent != null && (int)parent.PType > 20) //工程上报相关则PType继承上级
            {
                entity.PType = parent.PType;
            }

            if (entity.Id == Guid.Empty)
                entity.Id = GuidGenerator.Create();
            else if (folderlist.Any(x => x.Id == entity.Id))
                result = folderlist.FirstOrDefault(x => x.Id == entity.Id);

            if (result == null) // && entity.Id != Guid.Empty && !folderlist.Any(x => x.Id == entity.Id)
            {
                if (entity.PType == EnumDocumentPType.验收节点)
                {
                    entity.PrimaryId1 = entity.Id;
                }

                entity.CreatorUserId = UserManager.PrimaryId;
                entity.State = false;
                result = await documentLibrarysRepository.InsertAsync(entity);
            }
            else
            {
                result.Name = input.Name;
                result.TransInfo = input.TransInfo;
                await documentLibrarysRepository.UpdateAsync(result);
            }

            if (result != null && input.ChildList != null && input.ChildList.Count > 0)
            {
                //List<DocumentLibrarys> list = new List<DocumentLibrarys>();
                foreach (var child in input.ChildList)
                {
                    if ((int)result.PType > 10 && (int)result.PType < 20)
                    {
                        if (result.PType == EnumDocumentPType.验收节点)
                            child.PrimaryId1 = result.Id; //验收节点标识
                        else
                        {
                            child.PrimaryId1 = result.PrimaryId1; //验收节点下子集相同
                            //var old = folderlist.Where(x => x.TemplateId == child.TemplateId && x.PrimaryId1 == result.PrimaryId1).FirstOrDefault();
                            //if (old != null) child.Id = old.Id;
                        }
                    }

                    //child.PType = EnumDocumentPType.子检验批项;
                    child.ParentId = result.Id;
                    child.PrimaryId = result.PrimaryId;
                    child.TransInfo = child.TransInfo; //result.TransInfo;
                    await CreateFolder(child);
                }
            }

            if (result == null) throw new UserFriendlyException("创建失败, 请稍后再试");

            return result.Id;
        }

        /// <summary>
        /// 重命名 文件/文件夹 名称
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task Rename(RenameInput input)
        {
            //var entity = await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == input.Id);
            //if (entity == null) throw new UserFriendlyException(L("TheItemDoesNotExist"),  L("PleaseRefreshThePageAndTryAgain"));
            //entity.Name = input.Name.Trim();
            //await documentLibrarysRepository.UpdateAsync(entity);
            var entity = await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == input.Id);
            if (entity == null) throw new UserFriendlyException(L("TheItemDoesNotExist"), L("PleaseRefreshThePageAndTryAgain"));
            entity.Name = input.Name.Trim();

            //获取父级目录
            var parent = await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == entity.ParentId);
            if (parent != null)
            {
                entity.PType = parent.PType;
            }
            else
            {
                entity.PType = input.PType;
            }
            await documentLibrarysRepository.UpdateAsync(entity);
        }

        /// <summary>
        /// 移动 文件/文件夹 到指定目录
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task MoveToFolder(MoveToFolderInput input)
        {
            var parent = await documentLibrarysRepository.FirstOrDefaultAsync(input.ParentId);
            if (parent == null) throw new UserFriendlyException(L("TheItemDoesNotExist"), L("PleaseRefreshThePageAndTryAgain"));
            if (!parent.IsFolder) throw new UserFriendlyException("请选择正确的目录");

            var list = documentLibrarysRepository.GetAll().Where(x => input.IdList.Contains(x.Id));
            if (list.Any(x => x.IsSystem == true || x.PType > 0)) throw new UserFriendlyException("存在类型不允许操作的项, 请检查后再试");
            foreach (var item in list)
            {
                item.ParentId = input.ParentId;
                await documentLibrarysRepository.UpdateAsync(item);
            }
        }

        /// <summary>
        /// 资源库：PC专用(默认检索所有文件夹/文件)
        /// </summary>
        /// <param name="input"></param>
        /// <param name="disableFilter">是否禁用软删除</param>
        /// <param name="isFolder">是否查询文件夹</param>
        /// <param name="isRoot">是否展示根节点</param>
        /// <returns></returns>
        private async Task<PagedResultDto<DocumentLibrarysDto>> GetPagedList(QueryDocumentLibrarysInput input, bool disableFilter, bool isFolder = false, bool isRoot = false)
        {
            var query = documentLibrarysRepository.GetAll()
                .WhereIf(input.PrimaryId != Guid.Empty, x => x.PrimaryId == input.PrimaryId)
                .WhereIf(input.ParentId != Guid.Empty, x => x.ParentId == input.ParentId)
                .WhereIf(isRoot && input.ParentId == Guid.Empty, x => !x.ParentId.HasValue || x.ParentId == Guid.Empty)
                //.WhereIf(input.ParentId == Guid.Empty,  x => !x.ParentId.HasValue || x.ParentId == Guid.Empty)
                .WhereIf(isFolder, x => x.IsFolder) //x => x.FileId == null)
                .WhereIf(!input.ShowFloder, x => !x.IsFolder) //x => x.FileId != null)
                .WhereIf(disableFilter, x => x.IsDeleted == disableFilter)
                .WhereCreationTimeRange1(input.CreationTimeRange)
                .WhereIf(!input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(input.Filter));

            var result = ObjectMapper.Map<List<DocumentLibrarysDto>>(await query.OrderBy(input.Sorting).PageByAsync(input));
            var userIdList = result.Select(x => x.CreatorUserId).ToList();

            var userList = UserManager.Users.Where(x => userIdList.Contains(x.PrimaryId))?.ToList();
            foreach (var item in result)
            {
                item.CreatorUserName = userList.FirstOrDefault(x => x.PrimaryId == item.CreatorUserId)?.Name;
            }
            return new PagedResultDto<DocumentLibrarysDto>(query.Count(), result?.OrderBy(x => x.Type).ToList());
        }

        /// <summary>
        /// 获取文件库信息:检索所有文件夹/文件（默认包含所有节点文件/文件夹目录）
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<DocumentLibrarysDto>> QueryPagedList(QueryDocumentLibrarysInput input)
        {
            return await GetPagedList(input, false);
        }

        /// <summary>
        /// 获取文件库信息:（默认仅展示根节点文件/文件夹目录）
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<DocumentLibrarysDto>> QueryPagedListWithRoot(QueryDocumentLibrarysInput input)
        {
            return await GetPagedList(input, false, false, true);
        }

        /// <summary>
        /// 获取文件夹信息-分页数据集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<FolderDto>> QueryFloderPagedList(QueryDocumentLibrarysInput input)
        {
            return ObjectMapper.Map<PagedResultDto<FolderDto>>(await GetPagedList(input, false, true));
        }

        #endregion

        #region 回收站

        /// <summary>
        /// 批量删除至回收站，可同时删除文件/文件夹
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task BatchRemove(List<Guid> input)
        {
            //判断是否验收节点
            Guid? mppId = Guid.Empty;
            Guid modelGroupId = Guid.Empty;
            if (input.Count == 1)
            {
                var document = await documentLibrarysRepository.GetAll().Where(x => x.Id == input[0]).FirstOrDefaultAsync();
                if (document.PType == EnumDocumentPType.验收节点 && !document.TransInfo.IsNullOrWhiteSpace() && document.TransInfo.Contains("MppId"))
                {
                    CreateMppInput mppInput = JsonConvert.DeserializeObject<CreateMppInput>(document.TransInfo);
                    if (mppInput != null && mppInput.MppId != Guid.Empty)
                    {
                        mppId = mppInput.MppId;
                    }

                    modelGroupId = document.ParentId.Value;
                }
            }

            List<Guid> batchList = await documentLibrarysRepository.GetAllChildListWithParentIdAsync(UserManager.PrimaryId, input, input);

            //管理员
            bool isAdmin = CheckInRole(StaticRoleNames.Tenants.Admin);
            //有删除权限
            bool hasPermission = await CheckInPermissionAsync(AppPermissions.APJ_Organizations_DocumentLibrarys_Delete, UserManager.UserId.Value) || await CheckInPermissionAsync(AppPermissions.APJ_PI_Delete, UserManager.UserId.Value);
            //非资料所有者
            bool feOwner = await documentLibrarysRepository.CountAsync(x => x.CreatorUserId != UserManager.PrimaryId && input.Contains(x.Id)) > 0;

            if (isAdmin) goto delAction; //管理员
            if (hasPermission) goto delAction; //有删除权限
            if (feOwner) throw new UserFriendlyException("权限不足，不允许删除他人的资料");

            //删除资料
            delAction:
            {
                var result = await documentLibrarysRepository.BatchUpdateAsync(x => new DocumentLibrarys { IsDeleted = true }, x => batchList.Contains(x.Id));
                if (result > 0 && mppId.HasValue && mppId != Guid.Empty && modelGroupId != Guid.Empty)
                {
                    try
                    {
                        //删除Mpp
                        var inputPar = new List<PutMppProjectTaskInput<TaskDeleteInput>> {
                            new PutMppProjectTaskInput<TaskDeleteInput> {
                                Opration = "delete",
                                Data = new TaskDeleteInput {
                                    Id = mppId.Value
                                }
                            }
                        };
                        await mppAppService.PutMppPorjectTask(modelGroupId, inputPar);
                        //await mppAppService.RemoveMppPorject(mppId.Value);
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine("删除进度", ex);
                    }
                }
            }

        }

        /// <summary>
        /// 批量从回收站删除，可同时删除文件/文件夹
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task BatchRemoveOnRecycle(List<Guid> input)
        {
            UnitOfWorkManager.Current.DisableFilter(AbpDataFilters.SoftDelete);
            var list = await documentLibrarysRepository.GetAll().Where(x => x.CreatorUserId == UserManager.PrimaryId && x.IsDeleted == true && input.Contains(x.Id)).ToListAsync();
            //foreach (var item in list)
            //{
            //    await documentLibrarysRepository.HardDeleteAsync(item);
            //}
        }

        /// <summary>
        /// 获取回收站中的信息-分页数据集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<DocumentLibrarysDto>> QueryRecyclePagedList(QueryDocumentLibrarysInput input)
        {
            UnitOfWorkManager.Current.DisableFilter(AbpDataFilters.SoftDelete);
            return await GetPagedList(input, true);
        }

        #endregion

        #region 分享

        /// <summary>
        /// 创建分享
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<string> CreateShare(CreateShareInput input)
        {
            var documentLibrary = await documentLibrarysRepository.FirstOrDefaultAsync(input.Id);
            var entity = new DocumentShares
            {
                DocumentLibraryId = documentLibrary.Id,
                Password = input.Password,
                ExpiresTime = input.ExpiresTime,
            };
            await documentSharesRepository.InsertAsync(entity);
            return entity.Url;
        }

        /// <summary>
        /// 取消分享
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task CancelShare(Guid input)
        {
            var entity = await documentSharesRepository.FirstOrDefaultAsync(input);
            if (entity == null) throw new UserFriendlyException("分享不存在", L("PleaseRefreshThePageAndTryAgain"));
            await documentSharesRepository.DeleteAsync(input);
        }

        /// <summary>
        /// 更新分享信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task UpdateShareInfo(UpdateShareInput input)
        {
            var entity = await documentSharesRepository.FirstOrDefaultAsync(input.Id);
            if (entity == null) throw new UserFriendlyException("分享不存在", L("PleaseRefreshThePageAndTryAgain"));

            if (input.Type == 1) entity.ViewCount += 1;
            else if (input.Type == 2) entity.SaveCount += 1;
            else if (input.Type == 3) entity.DownloadCount += 1;

            await documentSharesRepository.UpdateAsync(entity);
        }

        /// <summary>
        /// 获取分享信息
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<DocumentLibrarysDto>> GetSharePagedList(QueryDocumentLibrarysInput input)
        {
            var query = documentLibrarysRepository.GetAll()
             .WhereIf(input.PrimaryId != Guid.Empty, x => x.PrimaryId == input.PrimaryId)
                .WhereIf(input.ParentId != Guid.Empty, x => x.ParentId == input.ParentId)
                .WhereCreationTimeRange1(input.CreationTimeRange)
                .WhereIf(!input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(input.Filter));

            var result = ObjectMapper.Map<List<DocumentLibrarysDto>>(await query.OrderByDescending(x => x.CreationTime).PageByAsync(input));
            var userIdList = result.Select(x => x.CreatorUserId).ToList();

            var userList = UserManager.Users.Where(x => userIdList.Contains(x.PrimaryId)).ToList();
            foreach (var item in result)
            {
                item.CreatorUserName = userList.First(x => x.PrimaryId == item.CreatorUserId).Name;
            }
            return new PagedResultDto<DocumentLibrarysDto>(query.Count(), result);
        }

        #endregion

        #region 文件库扩展

        ///// <summary>
        ///// 获得目录下所有文件或指定文件类型文件(包含所有子文件夹)
        ///// </summary>
        ///// <param name="input">压缩文件路径/读取文件夹路径</param>
        ///// <returns>目录结构列表</returns>
        //public object QueryFileExtList(string input)
        //{
        //    string winRar = ZipHelper.ExistsWinRar();       //判断是否已安装 winrar 压缩工具
        //    string unZipPath = input;       //压缩文件路径先解压, 再读取目录；文件夹路径, 直接读取目录
        //    var zipStart = DateTime.Now.ToLongTimeString();         //开始解压时间
        //    var zipEnd = zipStart;
        //    if (input.EndsWith(".rar") || input.EndsWith(".zip"))       //如果传入的时压缩文件，先解压到temp文件夹中
        //    {
        //        if (!File.Exists(input))
        //        {
        //            throw new UserFriendlyException("文件不存在");
        //        }

        //        if (string.IsNullOrWhiteSpace(winRar))
        //            throw new UserFriendlyException("请先安装windows解压工具WinRAR.exe");

        //        FileInfo file = new FileInfo(input);
        //        if (file == null || (file.Extension != ".zip" && file.Extension != ".rar")) throw new UserFriendlyException("不是有效的zip文件类型");

        //        unZipPath = Path.Combine(file.DirectoryName,  "temp1");       //解压目标文件夹位置

        //        //UnZipClass.UnZip(new string[] { file.FullName,  unZipPath });      // SharpZipLib 类库解压, 失败
        //        bool finish = ZipHelper.Decompression(file.FullName,  unZipPath,  true);          //lonic.Zip  对zip格式的文件进行解压

        //        zipStart = DateTime.Now.ToLongTimeString();         //开始解压时间
        //        //bool finish = ZipHelper.UnRarOrZip(unZipPath,  file.FullName,  winRar,  true,  "");     //解压rar\zip格式
        //        zipEnd = DateTime.Now.ToLongTimeString();        //完成解压时间
        //        if (!finish)
        //            throw new UserFriendlyException("解压失败");
        //    }

        //    var readStart = DateTime.Now.ToLongTimeString();    //开始读取时间
        //    var list = AppFileHelper.GetAllFiles(unZipPath,  "*",  null);     //读取结构
        //    var readEnd = DateTime.Now.ToLongTimeString();      //文成读取时间

        //    return new { zipStart = zipStart,  zipEnd = zipEnd,  readStart = readStart,  readEnd = readEnd,  list = list };
        //}

        #endregion

        #region 检验批
        /// <summary>
        /// 创建验收节点
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<FolderDto> CreateCheckP(CreateCheckPInput input)
        {
            #region 参数校验
            if (input.ModelGroupId == Guid.Empty || input.ProjectId == Guid.Empty || string.IsNullOrWhiteSpace(input.Name) || input.TemplateIds.Length <= 0 || string.IsNullOrWhiteSpace(input.TransInfo)) throw new UserFriendlyException("传入参数必填, 请检查后再试");
            CreateMppInput transInfo = null;
            try
            {
                transInfo = JsonConvert.DeserializeObject<CreateMppInput>(input.TransInfo);

                if (transInfo == null || transInfo.Color.IsNullOrWhiteSpace() || transInfo.PlanTimeRange.Length != 2 || transInfo.FinishTimeRange.Length != 2)
                    throw new UserFriendlyException("添加验收节点的参数不正确, 请重新输入");

                transInfo.FinishTimeRange.RangeDateTime();
                transInfo.PlanTimeRange.RangeDateTime();

                input.TransInfo = JsonConvert.SerializeObject(transInfo);
            }
            catch 
            {
                throw new UserFriendlyException("添加验收节点的参数不正确, 请重新输入");
            }

            var tempList = await projectCategoryTemplateRepository.GetAllListAsync();

            //场景
            var modelgroup = await projectModelGroupsRepository.FirstOrDefaultAsync(input.ModelGroupId);
            if (modelgroup == null) throw new UserFriendlyException("场景走丢了");

            #endregion

            //场景节点
            var parent = await documentLibrarysRepository.FirstOrDefaultAsync(modelgroup.Id);
            if (parent == null)
            {
                // throw new UserFriendlyException("场景目录为空, 请先创建场景目录");
                var parentCP = await documentLibrarysRepository.FirstOrDefaultAsync(x => x.PrimaryId == modelgroup.ProjectId && x.PType == EnumDocumentPType.检验批);
                if (parentCP == null)
                {
                    #region 检验批节点
                    //检验批节点
                    parentCP = await documentLibrarysRepository.InsertAsync(new DocumentLibrarys
                    {
                        Id = Guid.NewGuid(),
                        Name = EnumDocumentPType.检验批.ToString(),
                        ParentId = Guid.Empty,
                        PrimaryId = modelgroup.ProjectId,
                        PType = EnumDocumentPType.检验批,
                        IsSystem = true
                    });

                    if (parentCP == null) throw new UserFriendlyException("检验批目录创建失败，请重新创建场景再试");
                    #endregion
                }

                #region 场景进度
                string TransInfo = ""; string MppRequest = ""; string MppResponse = "";
                DateTime createdate = DateTime.Now.Date;
                try
                {
                    //创建项目场景进度
                    var request = new CreateMppProjectInput
                    {
                        Id = modelgroup.Id,
                        Title = modelgroup.Name,
                        StartDate = createdate,  //transInfo.FinishTimeRange[0], 
                        FinishDate = createdate.AddMonths(1),  //transInfo.FinishTimeRange[1], 
                        Author = UserManager.UserName,
                        Company = UserManager.UserName
                    };
                    MppRequest = JsonConvert.SerializeObject(request);
                    //创建进度
                    var response = await mppAppService.CreateMppProject(modelgroup.Id, request);

                    MppResponse = JsonConvert.SerializeObject(response);
                    if (response.Success && response.Item != null && response.Item.Id != Guid.Empty)
                    {
                        TransInfo = JsonConvert.SerializeObject(new { MppId = response.Item.Id });
                    }
                }
                catch (Exception ex)
                {
                    MppResponse = "创建进度异常" + ex.Message;
                }

                #endregion

                #region 场景节点
                //场景节点
                var rId = await CreateFolder(new CreateFolderInput
                {
                    Id = modelgroup.Id,
                    Name = modelgroup.Name,
                    PType = EnumDocumentPType.场景,
                    ParentId = parentCP.Id,
                    PrimaryId = modelgroup.ProjectId,
                    MppRequest = MppRequest,
                    MppResponse = MppResponse,
                    MppCreateTime = createdate
                    //PrimaryId2 = modelgroup.Id
                });
                if (rId == Guid.Empty) throw new UserFriendlyException("场景目录为空, 请先创建场景目录");

                //场景节点
                parent = new DocumentLibrarys
                {
                    Id = rId,
                    Name = modelgroup.Name
                };
                #endregion
            }

            #region 分部分项

            //分项Ids
            var fxIds = (from obj in tempList.Where(x => input.TemplateIds.Contains(x.Id))
                         select obj.ParentId).ToArray();
            //分部Ids
            var fbIds = (from obj in tempList.Where(x => fxIds.Contains(x.Id))
                         select obj.ParentId).ToArray();
            //构造分部分项
            var fbFolders = (from fb in tempList.Where(x => fbIds.Contains(x.Id))
                             select new CreateFolderInput
                             {
                                 Name = fb.Name,
                                 PType = EnumDocumentPType.分部,
                                 TemplateId = fb.Id,

                                 ChildList = (from fx in tempList.Where(x => fxIds.Contains(x.Id) && x.ParentId == fb.Id)
                                              select new CreateFolderInput
                                              {
                                                  Name = fx.Name,
                                                  PType = EnumDocumentPType.分项,
                                                  TemplateId = fx.Id,
                                                  ChildList = (from ck in tempList.Where(x => input.TemplateIds.Contains(x.Id) && x.ParentId == fx.Id)
                                                               select new CreateFolderInput
                                                               {
                                                                   Name = ck.Name,
                                                                   PType = EnumDocumentPType.子检验批项,
                                                                   TemplateId = ck.Id,
                                                                   TransInfo = JsonConvert.SerializeObject(new CreateChendPChildInput
                                                                   {
                                                                       Code = ck.Code,
                                                                       ParentId = ck.ParentId
                                                                   })
                                                               }).ToList()
                                              }).ToList()
                             }).ToList();
            #endregion

            //移除检验批项
            if (input.Id != Guid.Empty && documentLibrarysRepository.GetAll().Any(x => x.Id == input.Id))
            {
                await documentLibrarysRepository.DeleteAsync(x => x.PrimaryId1 == input.Id && x.PType == EnumDocumentPType.子检验批项 && !input.TemplateIds.Contains(x.TemplateId));
            }
            else if (input.Id == Guid.Empty)
            {
                input.Id = Guid.NewGuid();
            }

            //验收节点
            CreateFolderInput parentCheckP = new CreateFolderInput
            {
                Id = input.Id,
                Name = input.Name,
                ParentId = parent.Id,
                PrimaryId = modelgroup.ProjectId,
                PType = EnumDocumentPType.验收节点,
                TransInfo = input.TransInfo,
                ChildList = fbFolders
            };

            #region 进度任务

            try
            {
                Guid parentMppId = input.ModelGroupId; //JsonConvert.DeserializeObject<dynamic>(parent.TransInfo).MppId;

                if (transInfo.MppId.HasValue && transInfo.MppId != Guid.Empty)
                {
                    #region 编辑任务
                    List<PutMppProjectTaskInput<TaskCreateOrModifyInput>> request = new List<PutMppProjectTaskInput<TaskCreateOrModifyInput>>();
                    request.Add(new PutMppProjectTaskInput<TaskCreateOrModifyInput>
                    {
                        Opration = "update",
                        Data = new TaskCreateOrModifyInput
                        {
                            Id = parentCheckP.Id,
                            _ID = 1,
                            UID = UserManager.UserId,
                            ParentId = parentMppId,
                            Name = parentCheckP.Name,
                            Start = transInfo.PlanTimeRange[0],
                            Finish = transInfo.PlanTimeRange[1],
                            ActualStart = transInfo.FinishTimeRange[0],
                            ActualFinish = transInfo.FinishTimeRange[1],
                        }
                    });
                    parentCheckP.MppRequest = JsonConvert.SerializeObject(request);
                    var response = await mppAppService.PutMppPorjectTask(input.ModelGroupId, request);
                    parentCheckP.MppResponse = JsonConvert.SerializeObject(response);
                    parentCheckP.MppCreateTime = DateTime.Now;
                    if (response.Success && response.Item != null && response.Item.Id != Guid.Empty)
                    {
                        transInfo.MppId = response.Item.Id;

                        parentCheckP.TransInfo = JsonConvert.SerializeObject(transInfo);
                    }

                    parentCheckP.MppCreateTime = DateTime.Now;
                    #endregion
                }
                else
                {
                    #region 创建任务

                    List<PutMppProjectTaskInput<TaskCreateOrModifyInput>> request = new List<PutMppProjectTaskInput<TaskCreateOrModifyInput>>();
                    request.Add(new PutMppProjectTaskInput<TaskCreateOrModifyInput>
                    {
                        Opration = "create",
                        Data = new TaskCreateOrModifyInput
                        {
                            Id = parentCheckP.Id,
                            _ID = 1,
                            UID = UserManager.UserId,
                            ParentId = parentMppId,
                            Name = parentCheckP.Name,
                            Start = transInfo.PlanTimeRange[0],
                            Finish = transInfo.PlanTimeRange[1],
                            ActualStart = transInfo.FinishTimeRange[0],
                            ActualFinish = transInfo.FinishTimeRange[1],
                        }
                    });
                    parentCheckP.MppRequest = JsonConvert.SerializeObject(request);
                    var response = await mppAppService.PutMppPorjectTask(input.ModelGroupId, request);
                    parentCheckP.MppResponse = JsonConvert.SerializeObject(response);
                    parentCheckP.MppCreateTime = DateTime.Now;
                    if (response.Success && response.Item != null && response.Item.Id != Guid.Empty)
                    {
                        transInfo.MppId = response.Item.Id;

                        parentCheckP.TransInfo = JsonConvert.SerializeObject(transInfo);
                    }

                    parentCheckP.MppCreateTime = DateTime.Now;
                    #endregion
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("创建进度异常", ex);
                parentCheckP.MppResponse = "[创建进度异常]" + ex.Message;
            }
            finally
            {
                transInfo.MppId = parentCheckP.Id;
                parentCheckP.MppCreateTime = DateTime.Now;
                parentCheckP.TransInfo = JsonConvert.SerializeObject(transInfo);
            }

            #endregion

            //验收节点
            var resultId = await CreateFolder(parentCheckP);

            if (resultId == Guid.Empty) throw new UserFriendlyException("验收节点创建失败, 请稍后再试");

            return ObjectMapper.Map<FolderDto>(await documentLibrarysRepository.FirstOrDefaultAsync(resultId));
        }


        private string GetCodeWithPreFix(string prefix, string code)
        {
            return string.Format("{0}{1}", prefix, code);
        }

        /// <summary>
        /// 初始化工程类型模板数据
        /// </summary>
        /// <returns></returns>
        public void InitCategoryTemplateData(string keyword, EnumTemplateType type)
        {

            if (string.IsNullOrWhiteSpace(keyword) || keyword.ToLowerInvariant() != "123qwe") throw new UserFriendlyException("请输入登入密码");

            bool do_市政工程 = type == 0 || type == EnumTemplateType.市政工程;
            bool do_建设工程 = type == 0 || type == EnumTemplateType.建设工程;
            EnumTemplateType tType = (EnumTemplateType)type;

            if (tType == 0)
            {
                //删除所有
                projectCategoryTemplateRepository.Delete(x => true);
            }
            else
            {
                projectCategoryTemplateRepository.Delete(x => x.Type == tType);
            }

            #region 建设工程
            if (do_建设工程)
            {
                #region 分部

                var Prefix_FB = "JS"; //Utils.SpellConvertHelper.GetPinyin("分部").Split(";")[1];

                var parent1 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地基与基础工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "001"),
                    ParentCode = ""
                });

                var parent2 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "主体结构工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "002"),
                    ParentCode = ""
                });

                var parent3 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地基与基础工程（GB 50202-2018）",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "003"),
                    ParentCode = ""
                });

                var parent4 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑装饰装修工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "004"),
                    ParentCode = ""
                });

                var parent5 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑装饰装修工程（GB50210-2018）",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "005"),
                    ParentCode = ""
                });

                var parent6 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "屋面工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "006"),
                    ParentCode = ""
                });

                var parent7 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑给水排水及采暖工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "007"),
                    ParentCode = ""
                });

                var parent8 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "通风与空调工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "008"),
                    ParentCode = ""
                });

                var parent9 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "通风与空调工程（GB 50243-2016）",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "009"),
                    ParentCode = ""
                });

                var parent10 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑电气工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "010"),
                    ParentCode = ""
                });

                var parent11 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "智能建筑工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "011"),
                    ParentCode = ""
                });

                var parent12 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑节能工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "012"),
                    ParentCode = ""
                });

                var parent13 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "电梯工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "013"),
                    ParentCode = ""
                });
                #endregion

                #region NO1.地基与基础工程 + 分项

                //地基
                var child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地基",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="灰土地基工程检验批质量验收记录", Code="010101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code },
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砂和砂石地基工程检验批质量验收记录", Code="010102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code },
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(),  Type=EnumTemplateType.建设工程,  Name="土工合成材料地基工程检验批质量验收记录", Code="010103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code },
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(),  Type=EnumTemplateType.建设工程,  Name="粉煤灰地基工程检验批质量验收记录", Code="010104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code },

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="强夯地基工程检验批质量验收记录", Code="010105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆地基工程检验批质量验收记录", Code="010106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预压地基工程检验批质量验收记录", Code="010107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="振冲地基检验批质量验收记录", Code="010108", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥土桩墙支护（高压喷射注浆地基工程）检验质量验收记录（Ⅰ）", Code="010109", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥土桩墙支护（水泥土搅拌桩地基工程）检验质量验收记录（Ⅱ）", Code="010110", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土和灰土挤密桩复合地基工程检验批质量验收记录", Code="010111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥粉煤灰碎石桩复合地基工程检验批质量验收记录", Code="010112", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="夯实水泥土桩复合地基工程检验批质量验收记录", Code="010113", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砂桩地基工程检验批质量验收记录", Code="010114", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                });

                //桩基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "桩基础",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="静力压桩检验批质量验收记录", Code="010201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="先张法预应力管桩检验批质量验收记录", Code="010202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土预制桩（钢筋骨架）检验批质量验收记录（Ⅰ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土预制桩（钢筋混凝土预制桩）检验批质量验收记录（Ⅱ）（一）、（二）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢桩（成品）检验批质量验收记录（Ⅰ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢桩（钢桩施工）检验批质量验收记录（Ⅱ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土灌注桩（钢筋笼）检验批质量验收记录（Ⅰ）", Code="010205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土灌注桩（灌注桩）检验批质量验收记录（Ⅱ）", Code="010205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //土方
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "土方",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
                {
                    new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方开挖工程检验批质量验收记录", Code="010301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方回填工程检验批质量验收记录", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                });

                //基坑
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "基坑",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="静力压桩检验批质量验收记录", Code="010401 ", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="先张法预应力管桩检验批质量验收记录", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土预制桩（钢筋骨架）检验批质量验收记录（Ⅰ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土预制桩（钢筋混凝土预制桩）检验批质量验收记录（Ⅱ）（一）、（二）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢桩（成品质量）检验批质量验收记录（Ⅰ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢桩（钢桩施工）检验批质量验收记录（Ⅱ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土灌注桩（钢筋笼）检验批质量验收记录（Ⅰ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土灌注桩（灌注桩）检验批质量验收记录（Ⅱ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩墙支护（重复使用钢板桩围护墙）检验批质量验收记录（Ⅲ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩墙支护（混凝土板状围护墙）检验批质量验收记录（Ⅳ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥土桩墙支护（高压喷射注浆地基工程）检验批质量验收记录（Ⅰ）", Code="010402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥土桩墙支护（水泥土搅拌桩地基工程）检验批质量验收记录（Ⅱ）", Code="010402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锚杆及土钉墙支护工程检验批质量验收记录", Code="010403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢或混凝土支撑系统工程检验批质量验收记录", Code="010404", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地下连续墙工程检验批质量验收记录", Code="010405", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="沉井与沉箱工程检验批质量验收记录", Code="010406", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降水与排水工程检验批质量验收记录", Code="010407", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //地下防水
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地下防水",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（防水混凝土)检验批质量验收记录（Ⅰ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（水泥砂浆防水层)检验批质量验收记录（Ⅱ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（卷材防水层)检验批质量验收记录（Ⅲ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（涂料防水层)检验批质量验收记录（Ⅳ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（塑料防水板防水层)检验批质量验收记录（Ⅴ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（金属板防水层)检验批质量验收记录（Ⅵ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（膨润土防水材料防水层)检验批质量验收记录（Ⅶ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（施工缝）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（变形缝）检验批质量验收记录（Ⅱ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（后浇带）检验批质量验收记录（Ⅲ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（穿墙管）检验批质量验收记录（Ⅳ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（埋设件）检验批质量验收记录（Ⅴ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（预留通道结构）检验批质量验收记录（Ⅵ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（桩头）检验批质量验收记录（Ⅶ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（孔口）检验批质量验收记录（Ⅷ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（坑、池）检验批质量验收记录（Ⅸ）", Code="010502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（锚喷支护）检验批质量验收记录（Ⅰ）", Code="010503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（地下连续墙）检验批质量验收记录（Ⅱ）", Code="010503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（盾构隧道）检验批质量验收记录（Ⅲ）", Code="010503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（沉井）检验批质量验收记录（Ⅳ）", Code="010503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（逆筑结构）检验批质量验收记录（Ⅴ）", Code="010503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（渗排水、盲沟排水）检验批质量验收记录（Ⅰ）", Code="010504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（隧道排水、坑道排水）检验批质量验收记录（Ⅱ）", Code="010504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（塑料排水板排水）检验批质量验收记录（Ⅲ）", Code="010504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆工程（预注浆、后注浆）检验批质量验收记录（Ⅰ）", Code="010505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆工程（结构裂缝注浆）检验批质量验收记录（Ⅱ）", Code="010505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //混凝土基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "混凝土基础",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="模板安装检验批质量验收记录（一）、（二）、（三）", Code="010601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（材料）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（加工）检验批质量验收记录（Ⅱ）、（一）、（二）", Code="010602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（连接）检验批质量验收记录（Ⅲ）（一）、（二）", Code="010602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（安装））检验批质量验收记录（Ⅳ）", Code="010602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（原材料）检验批质量验收记录（Ⅰ）", Code="010603", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土拌合物）检验批质量验收记录（Ⅱ）", Code="010603", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土施工）检验批质量验收记录（Ⅲ）", Code="010603", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（外观质量）检验批质量验收记录（Ⅰ）", Code="010604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（现浇结构位置和尺寸偏差）检验批质量验收记录（Ⅱ）", Code="010604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（设备基础外观质量）检验批质量验收记录（Ⅲ）", Code="010604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（现浇设备基础位置和尺寸偏差）检验批质量验收记录（Ⅳ）", Code="010604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装配式结构（预制构件）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010605", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装配式结构（安装与连接）检验批质量验收记录（Ⅱ）（一）、（二）", Code="010605", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //砌体基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "砌体基础",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砖砌体工程检验批质量验收记录（一）、（二）", Code="010701", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土小型空心砌体砌块工程检验批质量验收记录", Code="010702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="石砌体工程检验批质量验收记录", Code="010703", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="配筋砌体工程检验批质量验收记录", Code="010704", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //钢-混凝土组合基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "钢-混凝土组合基础",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（钢构件焊接）工程检验批质量验收记录（Ⅰ）（一）、（二）", Code="010801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（焊钉栓钉焊接)工程检验批质量验收记录（Ⅱ）", Code="010801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（普通紧固件连接）工程检验批质量验收记录（Ⅰ）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（高强度螺栓连接）工程检验批质量验收记录（Ⅱ）（一）、（二）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="型钢（钢管）与钢筋连接检验批质量验收记录（一）、（二）", Code="010803", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢零件及钢部件加工工程检验批质量验收记录（一）、（二）", Code="010804", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件组装工程检验批质量验收记录", Code="010805", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（原材料）检验批质量验收记录（Ⅰ）", Code="010806", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土拌合物）检验批质量验收记录（Ⅱ）", Code="010806", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土施工）检验批质量验收记录（Ⅲ）", Code="010806", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //钢结构基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "钢结构基础",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate>
            {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（钢构件焊接）工程检验批质量验收记录（Ⅰ)(一)、（二）", Code="010901", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（焊钉栓钉焊接）工程检验批质量验收记录（Ⅱ）", Code="010901", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（普通紧固件连接）工程检验批质量验收记录（Ⅰ）", Code="010902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（高强度螺栓连接）工程检验批质量验收记录（一）、（二）", Code="010902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢零件及钢部件加工工程检验批质量验收记录（一）、（二）", Code="010903", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构涂装（防腐涂料涂装）工程检验批质量验收记录（Ⅰ）", Code="010904", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构涂装（防火涂料涂装）工程检验批质量验收记录（Ⅱ）", Code="010904", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                #endregion

                #region NO2.主体结构工程 + 分项

                //混凝土结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "混凝土结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="模板安装检验批质量验收记录（一）、（二）、（三）", Code="020101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（材料）检验批质量验收记录（Ⅰ）（一）、（二）", Code="020102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（加工）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（连接）检验批质量验收记录（Ⅲ）（一）、（二）", Code="020102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋（安装）检验批质量验收记录（Ⅳ）", Code="020102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（原材料）检验批质量验收记录（Ⅰ）", Code="020103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土拌合物）检验批质量验收记录（Ⅱ）", Code="020103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土施工）检验批质量验收记录（Ⅲ）", Code="020103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预应力（材料）检验批质量验收记录（Ⅰ）(一）、（二）", Code="020104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预应力（制作与安装）检验批质量验收记录（Ⅱ）", Code="020104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预应力（张拉和放张）检验批质量验收记录（Ⅲ）", Code="020104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预应力（灌浆及封锚）检验批质量验收记录（Ⅳ）", Code="020104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（外观质量）检验批质量验收记录（Ⅰ）", Code="020105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（现浇结构位置和尺寸偏差）检验批质量验收记录（Ⅱ）", Code="020105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（设备基础外观质量）检验批质量验收记录（Ⅲ）", Code="020105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇结构（现浇设备基础位置和尺寸偏差）检验批质量验收记录（Ⅳ）", Code="020105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装配式结构（预制构件）检验批质量验收记录（Ⅰ）（一）、（二）", Code="020106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装配式结构（安装与连接）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //砌体结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "砌体结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });


                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砖砌体工程检验批质量验收记录（一）、（二）", Code="020201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土小型空心砌块砌体工程检验批质量验收记录", Code="020202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="石砌体工程检验批质量验收记录", Code="020203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="配筋砌体工程检验批质量验收记录", Code="020204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="填充墙砌体工程检验批质量验收记录（一）、（二）", Code="020205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });


                //钢结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "钢结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（钢构件焊接）工程检验批质量验收记录（Ⅰ）（一）、（二）", Code="020301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（焊钉栓钉焊接）工程检验批质量验收记录（Ⅱ）", Code="020301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（普通紧固件连接）工程检验批质量验收记录（Ⅰ）", Code="020302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（高强度螺栓连接）工程检验批质量验收记录（Ⅱ）（一）、（二）", Code="020302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢零件及钢部件加工工程检验批质量验收记录（一）、（二）", Code="020303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构组装工程检验批质量验收记录", Code="020304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件预拼装工程检验批质量验收记录", Code="020305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="单层钢结构安装工程检验批质量验收记录（一）、（二）", Code="020306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="多层及高层钢结构安装工程检验批质量验收记录（一）、（二）", Code="020307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢网架结构（制作）工程检验批质量验收记录（Ⅰ）（一）、（二）", Code="020308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢网架结构（总拼与安装）工程检验批质量验收记录（Ⅱ）（一）、（二）", Code="020308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="压型金属板工程检验批质量验收记录", Code="020309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构涂装（防腐涂料涂装）工程检验批质量验收记录（Ⅰ）", Code="020310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构涂装（防火涂料涂装）工程检验批质量验收记录（Ⅱ）", Code="020310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });


                //钢管混凝土结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "钢管混凝土结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管构件进场验收检验批质量验收记录", Code="020401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管混凝土构件现场拼装检验批质量验收记录（一）、（二）、（三）", Code="020402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管混凝土柱柱脚锚固检验批质量验收记录", Code="020403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管混凝土构件安装检验批质量验收记录", Code="020404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管混凝土柱与钢筋混凝土梁连接检验批质量验收记录", Code="020405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管内钢筋骨架检验批质量验收记录", Code="020406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢管内混凝土浇筑检验批质量验收记录", Code="020407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //钢-混凝土组合结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "钢-混凝土组合结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（钢构件焊接）工程检验批质量验收记录（Ⅰ）（一）、（二）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构焊接（焊钉、栓钉、焊接）工程检验批质量验收记录（Ⅱ）", Code="020501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（普通紧固件连接）工程检验批质量验收记录（Ⅰ）", Code="020502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接（高强度螺栓连接）工程检验批质量验收记录（Ⅱ）（一）、（二）", Code="020502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="型钢（钢管）与钢筋连接检验批质量验收记录（一）、（二）", Code="020503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢零件及钢部件加工工程检验批质量验收记录（一）、（二）", Code="020504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件组装工程检验批质量验收记录", Code="020505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（原材料）检验批质量验收记录（Ⅰ）", Code="020506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土拌合物）检验批质量验收记录（Ⅱ）", Code="020506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土（混凝土施工）检验批质量验收记录（Ⅲ）", Code="020506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //铝合金结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "铝合金结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（铝合金材料）检验批质量验收记录（Ⅰ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（焊接材料）检验批质量验收记录（Ⅱ）", Code="020601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（标准紧固件）检验批质量验收记录（Ⅲ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（螺栓球）检验批质量验收记录（Ⅳ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（铝合金面板）检验批质量验收记录（Ⅴ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="原材料及成品进场（其他材料）检验批质量验收记录（Ⅵ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金焊接工程（铝合金构件焊接）检验批质量验收记录（一）、（二）", Code="020602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接工程（普通紧固件连接）检验批质量验收记录（Ⅰ）", Code="020602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="紧固件连接工程（高强度螺栓连接）检验批质量验收记录（Ⅱ）", Code="020603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金零部件加工工程（切割）检验批质量验收记录（Ⅰ）", Code="020604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金零部件加工工程（边缘加工）检验批质量验收记录（Ⅱ）", Code="020604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金零部件加工工程（球、毂加工）检验批质量验收记录（Ⅲ）", Code="020604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金零部件加工工程（制孔）检验批质量验收记录（Ⅳ）", Code="020604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金零部件加工工程（槽、豁、榫加工）检验批质量验收记录（Ⅴ）", Code="020604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金构件组装工程（组装）检验批质量验收记录（Ⅰ）", Code="020605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金构件组装工程（端部铣平及安装焊缝坡口）检验批质量验收记录（Ⅱ）", Code="020605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金构件预拼装工程检验批质量验收记录", Code="020606", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金框架结构安装工程（基础和支承面）检验批质量验收记录（Ⅰ）", Code="020607", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金框架结构安装工程（总拼和安装）检验批质量验收记录（Ⅱ）（一）、（二）、（三）", Code="020607", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金空间网格结构安装工程（支承面）检验批质量验收记录（Ⅰ）", Code="020608", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金空间网格结构安装工程（总拼和安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020608", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金面板工程（铝合金面板制作）检验批质量验收记录（Ⅰ）", Code="020609", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金面板工程（铝合金面板安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020609", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金幕墙结构安装工程（支承面）检验批质量验收记录（Ⅰ）", Code="020610", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="铝合金幕墙结构安装工程（总拼和安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020610", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐处理工程（阳极氧化）检验批质量验收记录（Ⅰ）", Code="020611", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐处理工程（涂装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020611", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐处理工程（隔离）检验批质量验收记录（Ⅲ）", Code="020611", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //木结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "木结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="方木与原木结构检验批质量验收记录（一）、（二）、（三）", Code="020701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="胶合木结构检验批质量验收记录（一）、（二）", Code="020702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="轻型木结构检验批质量验收记录（一）、（二）、（三)", Code="020703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="木结构的防护检验批质量验收记录(一）、（二）", Code="020704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //结构加固
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "结构加固",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（混凝土原材料）检验批质量验收记录（Ⅰ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（钢材）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（焊接材料）检验批质量验收记录（Ⅲ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（结构胶粘剂）检验批质量验收记录（Ⅳ）（一）、（二）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（纤维材料）检验批质量验收记录（Ⅴ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（水泥砂浆原材料）检验批质量验收记录（Ⅵ）", Code="020801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（聚合物砂浆原材料）检验批质量验收记录（Ⅶ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料(裂缝修补用注浆料）检验批质量验收记录（Ⅷ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（结构用混凝土界面胶（剂））检验批质量验收记录(Ⅸ)", Code="020801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料材料（结构加固用水泥基灌浆料）检验批质量验收记录(Ⅹ)", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="材料（锚栓）检验批质量验收记录(Ⅺ)", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件增大截面工程（界面处理）检验批质量验收记录（Ⅰ）（一）、（二）", Code="020802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件增大截面工程（新增截面施工）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件增大截面工程（施工质量）检验批质量验收记录（Ⅲ）（一）、（二）", Code="020802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="局部置换混凝土工程（卸载的实时控制）检验批质量验收记录（Ⅰ）", Code="020803", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="局部置换混凝土工程（混凝土局部剔除及界面处理）检验批质量验收记录（Ⅱ）", Code="020803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="局部置换混凝土工程（置换混凝土施工）检验批质量验收记录（Ⅲ）", Code="020803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="局部置换混凝土工程（施工质量）检验批质量验收记录（Ⅳ）", Code="020803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件绕丝工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件绕丝工程（绕丝施工）检验批质量验收记录（Ⅱ）", Code="020804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件绕丝工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件外加预应力工程（制作与安装）检验批质量验收记录（Ⅰ）", Code="020805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件外加预应力工程（张拉施工）检验批质量验收记录（Ⅱ）", Code="020805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土构件外加预应力工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘或外包型钢工程（型钢骨架制作）检验批质量验收记录（Ⅰ）", Code="020806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘或外包型钢工程（界面处理）检验批质量验收记录（Ⅱ）", Code="020806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘或外包型钢工程（型钢骨架安装及焊接）检验批质量验收记录（Ⅲ）", Code="020806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘或外包型钢工程（注胶或注浆施工)检验批质量验收记录（Ⅳ）", Code="020806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘或外包型钢工程（施工质量）检验批质量验收记录（Ⅴ）", Code="020806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘纤维复合材工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘纤维复合材工程（纤维材料粘贴施工）检验批质量验收记录（Ⅱ）", Code="020807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘纤维复合材（施工质量）检验批质量验收记录（Ⅲ）", Code="020807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘钢板工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020808", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘钢板工程（钢板粘贴施工）检验批质量验收记录（Ⅱ）", Code="020808", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外粘钢板工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020808", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢丝绳网片外加聚合物砂浆面层工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢丝绳网片外加聚合物砂浆面层工程（钢丝绳网片安装）检验批质量验收记录（Ⅱ）", Code="020809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢丝绳网片外加聚合物砂浆面层工程（聚合物砂浆面层施工）检验批质量验收记录（Ⅲ）", Code="020809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢丝绳网片外加聚合物砂浆面层工程（施工质量）检验批质量验收记录（Ⅳ）（一）、（二）", Code="020809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体或混凝土构件外加钢筋网-砂浆面层工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020810", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体或混凝土构件外加钢筋网-砂浆面层工程（钢筋网安装及砂浆面层施工）检验批质量验收记录（Ⅱ）（一）、（二）", Code="020810", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体或混凝土构件外加钢筋网-砂浆面层工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020810", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体柱外加预应力撑杆工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体柱外加预应力撑杆工程（撑杆制作）检验批质量验收记录（Ⅱ）", Code="020811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体柱外加预应力撑杆工程（撑杆安装与张拉）检验批质量验收记录（Ⅲ）", Code="020811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砌体柱外加预应力撑杆工程（施工质量）检验批质量验收记录（Ⅳ）", Code="020811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件增大截面工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020812", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件增大截面工程（新增钢部件加工）检验批质量验收记录（Ⅱ）", Code="020812", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件增大截面工程（新增部件安装、拼接施工）检验批质量验收记录（Ⅲ）（一）、（二）", Code="020812", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件增大截面工程（施工质量）检验批质量验收记录（Ⅳ）（一）、（二）", Code="020812", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件焊缝补强工程（焊区表面处理）检验批质量验收记录（Ⅰ）", Code="020813", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件焊缝补强工程（焊缝补强施工）检验批质量验收记录（Ⅱ）", Code="020813", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢构件焊缝补强工程（焊接质量）检验批质量验收记录（Ⅲ）", Code="020813", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢结构裂纹修复工程（焊缝补强施工及质量检验）检验批质量验收记录（Ⅰ）", Code="020814", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土及砌体裂缝修补工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土及砌体裂缝修补工程（表面封闭法施工）检验批质量验收记录（Ⅱ）", Code="020815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土及砌体裂缝修补工程（柔性密封法施工）检验批质量验收记录（Ⅲ）", Code="020815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土及砌体裂缝修补工程（压力灌注法施工）检验批质量验收记录（Ⅳ）", Code="020815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="混凝土及砌体裂缝修补工程（施工质量）检验批质量验收记录（Ⅴ）", Code="020815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="植筋工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020816", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="植筋工程（植筋工程施工）检验批质量验收记录（Ⅱ）", Code="020816", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="植筋工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020816", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锚栓工程（锚栓安装施工）检验批质量验收记录（Ⅰ）（一）、（二)", Code="020817", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锚栓工程（施工质量）检验批质量验收记录(Ⅱ)", Code="020817", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="灌浆工程（界面处理）检验批质量验收记录（Ⅰ）", Code="020818", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="灌浆工程（灌浆施工）检验批质量验收记录（Ⅱ）", Code="020818", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="灌浆工程（施工质量）检验批质量验收记录（Ⅲ）", Code="020818", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                #endregion

                #region NO3.地基与基础工程（GB 50202-2018） + 分项
                //地基
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地基",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="素土、灰土地基检验批质量验收记录", Code="010101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砂和砂石地基检验批质量验收记录", Code="010102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土工合成材料地基检验批质量验收记录", Code="010103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="粉煤灰地基检验批质量验收记录", Code="010104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="强夯地基检验批质量验收记录", Code="010105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆地基检验批质量验收记录", Code="010106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="预压地基检验批质量验收记录", Code="010107", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="砂石桩复合地基检验批质量验收记录", Code="010108", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="高压喷射注浆复合地基检验批质量验收记录", Code="010109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥土搅拌桩地基检验批质量验收记录", Code="010110", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土和灰土挤密桩复合地基检验批质量验收记录", Code="010111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水泥粉煤灰碎石桩复合地基检验批质量验收记录", Code="010112", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="夯实水泥土桩复合地基检验批质量验收记录", Code="010113", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "基础",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="无筋扩展基础检验批质量验收记录（Ⅰ）", Code="010201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="无筋扩展基础（砖砌体工程）检验批质量验收记录（Ⅱ）（一）、（二）", Code="010201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="无筋扩展基础（混凝土小型空心砌块砌体工程）检验批质量验收记录（Ⅲ）", Code="010201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="无筋扩展基础（石砌体工程）检验批质量验收记录（Ⅳ）", Code="010201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="无筋扩展基础（配筋砌体工程）检验批质量验收记录（Ⅴ）", Code="010201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础检验批质量验收记录（Ⅰ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础检验批质量验收记录（Ⅰ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（模板安装）检验批质量验收记录（Ⅱ）（一）、（二）、（三）", Code="010202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（钢筋材料）检验批质量验收记录（Ⅲ）（一）、（二）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（钢筋加工）检验批质量验收记录（Ⅳ）（一）、（二）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（钢筋连接）检验批质量验收记录（Ⅴ）（一）、（二）", Code="010202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（混凝土原材料）检验批质量验收记录（Ⅶ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（混凝土拌合物）检验批质量验收记录（Ⅷ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（混凝土施工）检验批质量验收记录（Ⅸ）", Code="010202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（现浇结构外观质量）检验批质量验收记录（Ⅹ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（现浇结构现浇结构位置和尺寸偏差）检验批质量验收记录（Ⅺ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（现浇结构设备基础外观质量）检验批质量验收记录（Ⅻ）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础(现浇结构现浇设备基础位置和尺寸偏差)检验批质量验收记录（XIII）", Code="010202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（装配式结构预制构件）检验批质量验收记录（XIV）（一）、（二）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土扩展基础（装配式结构安装与连接）检验批质量验收记录（XV）（一）、（二）", Code="010202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（模板安装）检验批质量验收记录（Ⅱ）（一）、（二）、（三）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（钢筋材料）检验批质量验收记录（Ⅲ）（一）、（二）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（钢筋加工）检验批质量验收记录（Ⅳ）（一）、（二）", Code="010203", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（钢筋连接）检验批质量验收记录（Ⅴ）（一）、（二）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（钢筋安装）检验批质量验收记录（Ⅵ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（混凝土原材料）检验批质量验收记录（Ⅶ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（混凝土拌合物）检验批质量验收记录（Ⅷ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（混凝土施工）检验批质量验收记录（Ⅸ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（现浇结构外观质量）检验批质量验收记录（Ⅹ）", Code="010203", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（现浇结构现浇结构位置和尺寸偏差）检验批质量验收记录（Ⅺ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（现浇结构设备基础外观质量）检验批质量验收记录（Ⅻ）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（现浇结构现浇设备基础位置和尺寸偏差）检验批质量验收记录（XIII）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（装配式结构预制构件）检验批质量验收记录（XIV）（一）、（二）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="筏形与箱形基础（装配式结构安装与连接）检验批质量验收记录（XV）（一）、（二）", Code="010203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（钢结构焊接钢构件焊接工程）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础(钢结构焊接焊钉、栓钉、焊接工程)检验批质量验收记录（Ⅱ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（紧固件连接普通紧固件连接工程）检验批质量验收记录（Ⅲ）", Code="010204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（紧固件连接高强度螺栓连接工程）检验批质量验收记录（Ⅳ）（一）、（二）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（型钢（钢管）与钢筋连接）检验批质量验收记录（Ⅴ）（一）、（二）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（钢零件及钢部件加工工程）检验批质量验收记录（Ⅵ）（一）、（二）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（钢构件组装工程）检验批质量验收记录（Ⅶ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（混凝土原材料）检验批质量验收记录（Ⅷ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（混凝土拌合物）检验批质量验收记录（Ⅸ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢-混凝土组合结构基础（混凝土施工）检验批质量验收记录（Ⅹ）", Code="010204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土预制桩（锤击预制桩）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢筋混凝土预制桩（静压预制桩）检验批质量验收记录（Ⅱ）（一）、（二）", Code="010205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="泥浆护壁成孔灌注桩检验批质量验收记录（一）、（二）", Code="010206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="干作业成孔灌注桩检验批质量验收记录", Code="010207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="沉管灌注桩检验批质量验收记录", Code="010209", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢桩检验批质量验收记录", Code="010210", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锚杆静压桩检验批质量验收记录", Code="010211", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="岩石锚杆基础检验批质量验收记录", Code="010212", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="沉井与沉箱检验批质量验收记录", Code="010213", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //特殊土地基基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "特殊土地基基础",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="湿陷性黄土（湿陷性黄土场地上素土、灰土地基）检验批质量验收记录（Ⅰ）", Code="010301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="湿陷性黄土（湿陷性黄土场地上强夯地基）检验批质量验收记录（Ⅱ）", Code="010301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="湿陷性黄土（湿陷性黄土场地上挤密地基）检验批质量验收记录（Ⅲ）", Code="010301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="湿陷性黄土（湿陷性黄土场地上预浸水法）检验批质量验收记录（Ⅳ）", Code="010301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（保温隔热地基）检验批质量验收记录（Ⅰ）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（钢筋混凝土预制桩）检验批质量验收记录（Ⅱ）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（多年冻土地区泥浆护壁成孔灌注桩）检验批质量验收记录（Ⅲ）（一）、（二）", Code="010302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（多年冻土地区干作业成孔灌注桩）检验批质量验收记录（Ⅳ）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（多年冻土地区长螺旋钻孔压灌桩）检验批质量验收记录（Ⅴ）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冻土（架空通风基础）检验批质量验收记录（Ⅵ）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="膨胀土（素土、灰土地基）检验批质量验收记录（Ⅰ）", Code="010303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="膨胀土（砂和砂石地基）检验批质量验收记录（Ⅱ）", Code="010303", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="膨胀土（干作业成孔灌注桩）检验批质量验收记录（Ⅲ）", Code="010303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="膨胀土（长螺旋钻孔压灌桩）检验批质量验收记录（Ⅳ）", Code="010303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="膨胀土（散水）检验批质量验收记录（Ⅴ）", Code="010303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（浸水预溶法）检验批质量验收记录（Ⅰ）", Code="010304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（盐化法）检验批质量验收记录（Ⅱ）", Code="010304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（砂和砂石地基）检验批质量验收记录（Ⅲ）", Code="010304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（粉煤灰地基）检验批质量验收记录（Ⅳ）", Code="010304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（强夯地基）检验批质量验收记录（Ⅴ）", Code="010304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="盐渍土（砂石桩复合地基）检验批质量验收记录（Ⅵ）", Code="010304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //基坑支护
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "基坑支护",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩（灌注桩排桩）检验批质量验收记录（Ⅰ）", Code="010401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩（单轴与双轴水泥土搅拌桩截水帷幕）检验批质量验收记录（Ⅱ）", Code="010401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩（三轴水泥土搅拌桩截水帷幕）检验批质量验收记录（Ⅲ）", Code="010401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩（渠式切割水泥土连续墙截水帷幕）检验批质量验收记录（Ⅳ）", Code="010401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排桩（高压喷射注浆截水帷幕）检验批质量验收记录（Ⅴ）", Code="010401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板桩围护墙（钢板桩围护墙）检验批质量验收记录（Ⅰ）", Code="010402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板桩围护墙（预制混凝土板桩围护墙）检验批质量验收记录（Ⅱ）", Code="010402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="咬合桩围护墙检验批质量验收记录（一）、（二）", Code="010403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="型钢水泥土搅拌墙（内插型钢）检验批质量验收记录（Ⅰ）", Code="010404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="型钢水泥土搅拌墙（三轴水泥土搅拌桩）检验批质量验收记录（Ⅱ）", Code="010404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="型钢水泥土搅拌墙(渠式切割水泥土连续墙)检验批质量验收记录（Ⅲ）", Code="010404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土钉墙检验批质量验收记录（Ⅰ）", Code="010405", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土钉墙(单轴与双轴水泥土搅拌桩截水帷幕)检验批质量验收记录（Ⅱ）", Code="010405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土钉墙（三轴水泥土搅拌桩截水帷幕）检验批质量验收记录（Ⅲ）", Code="010405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土钉墙（渠式切割水泥土连续墙截水帷幕）检验批质量验收记录（Ⅳ）", Code="010405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土钉墙（高压喷射注浆截水帷幕）检验批质量验收记录（Ⅴ）", Code="010405", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地下连续墙（泥浆性能）检验批质量验收记录（Ⅰ）", Code="010406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地下连续墙（钢筋笼制作与安装）检验批质量验收记录（Ⅱ）", Code="010406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地下连续墙（地下连续墙成槽及墙体）检验批质量验收记录（Ⅲ）（一）、（二）", Code="010406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="重力式水泥土墙（水泥土搅拌桩）检验批质量验收记录", Code="010407", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土体加固（水泥土搅拌桩土体加固）检验批质量验收记录（Ⅰ）", Code="010408", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土体加固（高压喷射注浆土体加固）检验批质量验收记录（Ⅱ）", Code="010408", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土体加固（注浆土体加固）检验批质量验收记录（Ⅲ）", Code="010408", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="内支撑（钢筋混凝土支撑）检验批质量验收记录（Ⅰ）", Code="010409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="内支撑（钢支撑）检验批质量验收记录（Ⅱ）", Code="010409", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="内支撑（钢立柱支撑）检验批质量验收记录（Ⅲ）", Code="010409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锚杆检验批质量验收记录", Code="010410", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护(灌注桩排桩)检验批质量验收记录（Ⅰ）", Code="010411", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（单轴与双轴水泥土搅拌桩）检验批质量验收记录（Ⅱ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（三轴水泥土搅拌桩）检验批质量验收记录（Ⅲ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护(渠式切割水泥土连续墙)检验批质量验收记录（Ⅳ）", Code="010411", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（高压喷射注浆）检验批质量验收记录（Ⅴ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（咬合桩围护）检验批质量验收记录（Ⅵ）（一）、（二）", Code="010411", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（地下连续墙泥浆性能）检验批质量验收记录（Ⅶ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（地下连续墙钢筋笼制作与安装）检验批质量验收记录（Ⅷ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（地下连续墙成槽及墙体）检验批质量验收记录（Ⅸ）（一）、（二）", Code="010411", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="与主体结构相结合的基坑支护（竖向支承桩柱）检验批质量验收记录（Ⅹ）", Code="010411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //地下水控制
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地下水控制",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（降水施工材料）检验批质量验收记录（Ⅰ）", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（轻型井点施工）检验批质量验收记录（Ⅱ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（喷射井点施工）检验批质量验收记录（Ⅲ）", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（管井施工）检验批质量验收记录（Ⅳ）", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（轻型井点、喷射井点、真空管井降水运行）检验批质量验收记录（Ⅴ）", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（减压降水管井运行）检验批质量验收记录（Ⅵ）", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="降排水（管井封井）检验批质量验收记录（Ⅶ）", Code="010501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="回灌（回灌施工材料）检验批质量验收记录（Ⅰ）", Code="010502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="回灌（管井施工）检验批质量验收记录（Ⅱ）", Code="010502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="回灌（回灌管井运行）检验批质量验收记录（Ⅲ）", Code="010502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //土石方
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "土石方",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方开挖（柱基、基坑、基槽土方开挖工程）检验批质量验收记录（Ⅰ）", Code="010601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方开挖（挖方场地平整土方开挖工程）检验批质量验收记录（Ⅱ）", Code="010601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方开挖（管沟土方开挖工程）检验批质量验收记录（Ⅲ）", Code="010601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方开挖（地（路）面基层土方开挖工程）检验批质量验收记录（Ⅳ）", Code="010601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="岩质基坑开挖（柱基、基坑、基槽、管沟岩质基坑开挖工程）检验批质量验收记录（Ⅰ）", Code="010602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="岩质基坑开挖（挖方场地平整岩土开挖工程）检验批质量验收记录（Ⅱ）", Code="010602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土石方堆放工程检验批质量验收记录", Code="010603", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方回填（柱基、基坑、基槽、管沟、地（路）面基础层填方工程）检验批质量验收记录（Ⅰ）", Code="010604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="土方回填（场地平整填方工程）检验批质量验收记录（Ⅱ）", Code="010604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //边坡
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "边坡",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="边坡喷锚检验批质量验收记录", Code="010701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="挡土墙检验批质量验收记录", Code="010702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="边坡开挖检验批质量验收记录", Code="010703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //地下防水
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地下防水",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（防水混凝土）检验批质量验收记录（Ⅰ）", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（水泥砂浆防水层）检验批质量验收记录（Ⅱ）", Code="010801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（卷材防水层）检验批质量验收记录（Ⅲ）", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（涂料防水层）检验批质量验收记录（Ⅳ）", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（塑料防水板防水层）检验批质量验收记录（Ⅴ）", Code="010801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（金属板防水层）检验批质量验收记录（Ⅵ）", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="主体结构防水（膨润土防水材料防水层）检验批质量验收记录（Ⅶ）", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（施工缝）检验批质量验收记录（Ⅰ）（一）、（二）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（变形缝）检验批质量验收记录（Ⅱ）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（后浇带）检验批质量验收记录（Ⅲ）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（穿墙管）检验批质量验收记录（Ⅳ）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（埋设件）检验批质量验收记录（Ⅴ）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（预留通道接头）检验批质量验收记录（Ⅵ）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（桩头）检验批质量验收记录（Ⅶ）", Code="010802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（孔口）检验批质量验收记录（Ⅷ）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="细部构造防水（坑、池）检验批质量验收记录（Ⅸ）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（锚喷支护）检验批质量验收记录（Ⅰ）", Code="010803", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（地下连续墙）检验批质量验收记录（Ⅱ）", Code="010803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（盾构隧道）检验批质量验收记录（Ⅲ）", Code="010803", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（沉井）检验批质量验收记录（Ⅳ）", Code="010803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特殊施工法结构防水（逆筑结构）检验批质量验收记录（Ⅴ）", Code="010803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（渗排水、盲沟排水）检验批质量验收记录（Ⅰ）", Code="010804", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（隧道排水、坑道排水）检验批质量验收记录（Ⅱ）", Code="010804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排水工程（塑料排水板排水）检验批质量验收记录（Ⅲ）", Code="010804", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆工程（预注浆、后注浆）检验批质量验收记录（Ⅰ）", Code="010805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="注浆工程（结构裂缝注浆）检验批质量验收记录（Ⅱ）", Code="010805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });
                #endregion

                #region NO4.建筑装饰装修工程 + 分项

                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑地面",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（基土）检验批质量验收记录（Ⅰ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（灰土垫层）检验批质量验收记录（Ⅱ）", Code="030101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（砂垫层和砂石垫层）检验批质量验收记录（Ⅲ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（碎石垫层和碎砖垫层）检验批质量验收记录（Ⅳ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（三合土垫层和四合土垫层）检验批质量验收记录（Ⅴ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（炉渣垫层）检验批质量验收记录（Ⅵ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（水泥混凝土垫层和陶粒混凝土垫层）检验批质量验收记录（Ⅶ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（找平层）检验批质量验收记录（Ⅷ）（一）、（二）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（隔离层）检验批质量验收记录（Ⅸ）（一）、（二）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（填充层）检验批质量验收记录（Ⅹ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（绝热层）检验批质量验收记录（Ⅺ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水泥混凝土面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水泥砂浆面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水磨石面层）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（硬化耐磨面层）检验批质量验收记录（Ⅳ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（防油渗面层）检验批质量验收记录（Ⅴ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（不发火(防爆)面层）检验批质量验收记录（Ⅵ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（自流平面层）检验批质量验收记录（Ⅶ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（涂料面层）检验批质量验收记录（Ⅷ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（塑胶面层）检验批质量验收记录（Ⅸ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（地面辐射供暖的整体面层）检验批质量验收记录（Ⅹ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（砖面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（大理石面层和花岗石面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（预制板块面层）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（料石面层）检验批质量验收记录（Ⅳ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（塑料板面层）检验批质量验收记录（Ⅴ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（活动地板面层）检验批质量验收记录（Ⅵ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（金属板面层）检验批质量验收记录（Ⅶ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（地毯面层）检验批质量验收记录（Ⅷ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（地面辐射供暖的板块面层）检验批质量验收记录（Ⅸ）（一）、（二）、（三）、（四）、（五）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（实木地板、实木集成地板、竹地板面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（实木复合地板面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（浸渍纸层压木质地板面层）检验批质量验收记录（Ⅲ）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（软木类地板面层）检验批质量验收记录（Ⅳ）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（地面辐射供暖的木板面层）检验批质量验收记录（Ⅴ）（一）、（二）、（三）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //抹灰
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "抹灰",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="一般抹灰工程检验批质量验收记录（一）、（二）", Code="030201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装饰抹灰工程检验批质量验收记录（一）、（二）", Code="030202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="清水砌体勾缝工程检验批质量验收记录", Code="030203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //门窗
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "门窗",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="木门窗制作与安装（木门窗制作）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="木门窗制作与安装（木门窗安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（钢门窗安装）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（铝合金门窗安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（涂色镀锌钢板门窗安装）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="塑料门窗安装工程检验批质量验收记录（一）、（二）", Code="030303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特种门安装工程检验批质量验收记录", Code="030304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="门窗玻璃安装工程检验批质量验收记录", Code="030305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //吊顶
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "吊顶",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="暗龙骨吊顶工程检验批质量验收记录（一）、（二）", Code="030401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="明龙骨吊顶工程检验批质量验收记录", Code="030402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //轻质隔墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "轻质隔墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板材隔墙工程检验批质量验收记录", Code="030501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="骨架隔墙工程检验批质量验收记录", Code="030502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="活动隔墙工程检验批质量验收记录", Code="030503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="玻璃隔墙工程检验批质量验收记录", Code="030504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //饰面板（砖）
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "饰面板（砖）",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面板（石材）安装工程检验批质量验收记录（Ⅰ）", Code="030601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面板（瓷板）安装工程检验批质量验收记录（Ⅱ）", Code="030601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面板（木材）安装工程检验批质量验收记录（Ⅲ）", Code="030601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面板（塑料板）安装工程检验批质量验收记录（Ⅳ）", Code="030601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面板（金属板）安装工程检验批质量验收记录（Ⅴ）", Code="030601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面砖（外墙面砖）粘贴工程检验批质量验收记录（Ⅰ）", Code="030602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="饰面砖（内墙面砖）粘贴工程检验批质量验收记录（Ⅱ）", Code="030602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //幕墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "幕墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="玻璃幕墙安装工程检验批质量验收记录（一）、（二）、（三）", Code="030701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属幕墙安装工程检验批质量验收记录（一）、（二）", Code="030702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="石材幕墙安装工程检验批质量验收记录（一）、（二）", Code="030703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
            });

                //涂饰
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "涂饰",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水性涂料涂饰工程检验批质量验收记录（一）、（二）", Code="030801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="溶剂型涂料涂饰工程检验批质量验收记录（一）、（二）", Code="030802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="美术涂饰工程检验批质量验收记录", Code="030803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
            });

                //裱糊与软包
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "裱糊与软包",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="裱糊工程检验批质量验收记录", Code="030901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软包工程检验批质量验收记录（一）、（二）", Code="030902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //细部
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "细部",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="橱柜制作与安装工程检验批质量验收记录", Code="031001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="窗帘盒和窗台板制作与安装工程检验批质量验收记录", Code="031002", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="门窗套制作与安装工程检验批质量验收记录", Code="031003", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="护栏和扶手制作与安装工程检验批质量验收记录", Code="031004", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="花饰制作与安装工程检验批质量验收记录", Code="031005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });
                #endregion

                #region NO5.建筑装饰装修工程（GB50210-2018） + 分项
                //建筑地面
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑地面",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（基土）检验批质量验收记录（Ⅰ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（灰土垫层）检验批质量验收记录（Ⅱ）", Code="030101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（砂垫层和砂石垫层）检验批质量验收记录（Ⅲ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（碎石垫层和碎砖垫层）检验批质量验收记录（Ⅳ）", Code="030101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（三合土垫层和四合土垫层）检验批质量验收记录（Ⅴ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（炉渣垫层）检验批质量验收记录（Ⅵ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（水泥混凝土垫层和陶粒混凝土垫层）检验批质量验收记录（Ⅶ）", Code="030101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（找平层）检验批质量验收记录（Ⅷ）（一）、（二）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（隔离层）检验批质量验收记录（Ⅸ）（一）、（二）", Code="030101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（填充层）检验批质量验收记录（Ⅹ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="基层铺设（绝热层）检验批质量验收记录（Ⅺ）", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水泥混凝土面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水泥砂浆面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（水磨石面层）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（硬化耐磨面层）检验批质量验收记录（Ⅳ）", Code="030102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（防油渗面层）检验批质量验收记录（Ⅴ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（不发火(防爆)面层）检验批质量验收记录（Ⅵ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（自流平面层）检验批质量验收记录（Ⅶ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（涂料面层）检验批质量验收记录（Ⅷ）", Code="030102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（塑胶面层）检验批质量验收记录（Ⅸ）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层铺设（地面辐射供暖的整体面层）检验批质量验收记录（Ⅹ）（一）、（二）", Code="030102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（砖面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（大理石面层和花岗石面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（预制板块面层）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（料石面层）检验批质量验收记录（Ⅳ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（塑料板面层）检验批质量验收记录（Ⅴ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（活动地板面层）检验批质量验收记录（Ⅵ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（金属板面层）检验批质量验收记录（Ⅶ）", Code="030103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（地毯面层）检验批质量验收记录（Ⅷ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层铺设（地面辐射供暖的板块面层）检验批质量验收记录（Ⅸ）（一）、（二）、（三）、（四）、（五）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（实木地板、实木集成地板、竹地板面层）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030104", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（实木复合地板面层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（浸渍纸层压木质地板面层）检验批质量验收记录（Ⅲ）", Code="030104", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（软木类地板面层）检验批质量验收记录（Ⅳ）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="竹、木面层铺设（地面辐射供暖的木板面层）检验批质量验收记录（Ⅴ）（一）、（二）、（三）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //抹灰
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "抹灰",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="一般抹灰工程检验批质量验收记录（一）、（二）", Code="030201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="保温层薄抹灰工程检验批质量验收记录（一）、（二）", Code="030202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="装饰抹灰工程检验批质量验收记录（一）、（二）", Code="030203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="清水砌体勾缝工程检验批质量验收记录", Code="030204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //外墙防水
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "外墙防水",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外墙砂浆防水工程检验批质量验收记录", Code="030301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外墙涂膜防水工程检验批质量验收记录", Code="030302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外墙透气膜防水工程检验批质量验收记录", Code="030303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //门窗
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "门窗",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="木门窗安装工程检验批质量验收记录（一）、（二）", Code="030401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（钢门窗安装）检验批质量验收记录（Ⅰ）（一）、（二）", Code="030402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（铝合金门窗安装）检验批质量验收记录（Ⅱ）（一）、（二）", Code="030402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属门安装工程（涂色镀锌钢板门窗安装）检验批质量验收记录（Ⅲ）（一）、（二）", Code="030402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="塑料门窗安装工程检验批质量验收记录（一）、（二）、（三）", Code="030403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="特种门安装工程检验批质量验收记录（一）、（二）", Code="030404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="门窗玻璃安装工程检验批质量验收记录", Code="030405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
            });

                //吊顶
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "吊顶",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="整体面层吊顶工程检验批质量验收记录（一）、（二）", Code="030501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板块面层吊顶工程检验批质量验收记录（一）、（二）", Code="030502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="格栅吊顶工程检验批质量验收记录（一）、（二）", Code="030503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //轻质隔墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "轻质隔墙",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板材隔墙工程检验批质量验收记录（一）、（二）", Code="030601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="骨架隔墙工程检验批质量验收记录（一）、（二）", Code="030602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="活动隔墙工程检验批质量验收记录", Code="030603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="玻璃隔墙工程检验批质量验收记录（一）、（二）", Code="030604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //饰面板
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "饰面板",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="石板安装工程检验批质量验收记录（一）、（二）", Code="030701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="陶瓷板安装工程检验批质量验收记录", Code="030702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="木板安装工程检验批质量验收记录", Code="030703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属板安装工程检验批质量验收记录", Code="030704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="塑料板安装工程检验批质量验收记录", Code="030705", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //饰面砖
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "饰面砖",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="外墙饰面砖粘贴工程检验批质量验收记录（一）、（二）", Code="030801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="内墙饰面砖粘贴工程检验批质量验收记录", Code="030802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //幕墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "幕墙",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="玻璃幕墙安装工程检验批质量验收记录（一）、（二）、（三）", Code="030901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属幕墙安装工程检验批质量验收记录（一）、（二）", Code="030902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="石材幕墙安装工程检验批质量验收记录（一）、（二）", Code="030903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="人造板材幕墙安装工程检验批质量验收记录", Code="030904", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //涂饰
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "涂饰",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水性涂料涂饰工程检验批质量验收记录（一）、（二）", Code="031001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="溶剂型涂料涂饰工程检验批质量验收记录（一）、（二）", Code="031002", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="美术涂饰工程检验批质量验收记录", Code="031003", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //裱糊与软包
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "裱糊与软包",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="裱糊工程检验批质量验收记录", Code="031101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软包工程检验批质量验收记录（一）、（二）", Code="031102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //细部
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "细部",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="橱柜制作与安装工程检验批质量验收记录", Code="031201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="窗帘盒和窗台板制作与安装工程检验批质量验收记录", Code="031202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="门窗套制作与安装工程检验批质量验收记录", Code="031203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="护栏和扶手制作与安装工程检验批质量验收记录", Code="031204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="花饰制作与安装工程检验批质量验收记录", Code="031205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });
                #endregion

                #region NO6.屋面工程 + 分项

                //基层与保护
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "基层与保护",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="找坡层检验批质量验收记录（Ⅰ）", Code="040101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="找平层检验批质量验收记录（Ⅱ）", Code="040101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="隔汽层检验批质量验收记录", Code="040102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="隔离层检验批质量验收记录", Code="040103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="保护层检验批质量验收记录", Code="040104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //保温与隔热
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "保温与隔热",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板状材料保温层检验批质量验收记录", Code="040201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="纤维材料保温层检验批质量验收记录", Code="040202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="喷涂硬泡聚氨酯保温层检验批质量验收记录", Code="040203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="现浇泡沫混凝土保温层检验批质量验收记录", Code="040204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="种植隔热层检验批质量验收记录", Code="040205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="架空隔热层检验批质量验收记录", Code="040206", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="蓄水隔热层检验批质量验收记录", Code="040207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //防水与密封
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "防水与密封",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="卷材防水层检验批质量验收记录", Code="040301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="涂膜防水层检验批质量验收记录", Code="040302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="复合防水层检验批质量验收记录", Code="040303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接缝密封防水检验批质量验收记录", Code="040304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //瓦面与版面
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "瓦面与版面",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="烧结瓦和混凝土瓦铺装检验批质量验收记录", Code="040401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="沥青瓦铺装检验批质量验收记录", Code="040402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属板铺装检验批质量验收记录", Code="040403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="玻璃采光顶铺装检验批质量验收记录（一）、（二）", Code="040404", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //细部构造
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "细部构造",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="檐口检验批质量验收记录", Code="040501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="檐沟和天沟检验批质量验收记录", Code="040502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="女儿墙和山墙检验批质量验收记录", Code="040503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="水落口检验批质量验收记录", Code="040504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="变形缝检验批质量验收记录", Code="040505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="伸出屋面管道检验批质量验收记录", Code="040506", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="屋面出入口检验批质量验收记录", Code="040507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="反梁过水孔检验批质量验收记录", Code="040508", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设施基座检验批质量验收记录", Code="040509", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="屋脊检验批质量验收记录", Code="040510", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="屋顶窗检验批质量验收记录", Code="040511", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });
                #endregion

                #region NO7.建筑给水排水及采暖工程 + 分项

                //室内给水系统安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室内给水系统安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内给水管道及配件安装工程检验批质量验收记录（一）、（二）", Code="050101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内消火栓系统安装工程检验批质量验收记录", Code="050102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="给水设备安装工程检验批质量验收记录", Code="050103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //室内排水系统安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室内排水系统安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内排水管道及配件安装工程检验批质量验收记录（一）、（二）、（三）", Code="050201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="雨水管道及配件安装工程检验批质量验收记录（一）、（二）", Code="050202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //室内热水供应系统安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室内热水供应系统安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内热水供应系统管道及配件安装检验批质量验收记录（一）、（二）", Code="050301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内热水供应系统辅助设备安装检验批质量验收记录（一）、（二）", Code="050302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //卫生器具安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "卫生器具安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="卫生器具安装工程检验批质量验收记录", Code="050401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="卫生器具给水配件安装工程检验批质量验收记录", Code="050402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="卫生器具排水管道安装工程检验批质量验收记录（一）、（二）", Code="050403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //室内采暖系统安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室内采暖系统安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内采暖系统管道及配件安装检验批质量验收记录（一）、（二)、（三）", Code="050501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内采暖系统辅助设备及散热器安装工程检验批质量验收记录", Code="050502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="金属辐射板安装工程检验批质量验收记录", Code="050503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="低温热水地板辐射采暖系统安装工程检验批质量验收记录", Code="050504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室内采暖系统水压试验及调试检验批质量验收记录", Code="050505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //室外给水管网安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室外给水管网安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外给水管网给水管道安装检验批质量验收记录（一）、（二）", Code="050601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="消防水泵接合器及室外消火栓安装检验批质量验收记录", Code="050602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外给水管网管沟及井室检验批质量验收记录（一）、（二)", Code="050603", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //室外排水管网安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室外排水管网安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外排水管网排水管道安装工程检验批质量验收记录", Code="050701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外排水管网管沟与井池工程检验批质量验收记录", Code="050702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //室外供热管网安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室外供热管网安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外供热管网管道及配件安装检验批质量验收记录（一）、（二）", Code="050801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="室外供热管网系统水压试验及调试验检验批质量验收记录", Code="050802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //建筑中水系统及游泳池水系统安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑中水系统及游泳池水系统安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑中水系统管道及辅助设备安装工程检验批质量验收记录", Code="050901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="游泳池水系统安装工程检验批质量验收记录", Code="050902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
            });

                //供热锅炉及辅助设备安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "供热锅炉及辅助设备安装",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锅炉安装工程检验批质量验收记录（一）、（二）、（三）", Code="051001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锅炉辅助设备及管道安装检验批质量验收记录（一）、（二）、（三）", Code="051002", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="锅炉安全附件安装检验批质量验收记录（一）、（二）", Code="051003", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="烘炉、煮炉和试运行检验批质量验收记录", Code="051004", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="换热站安装工程检验批质量验收记录（一）、（二）", Code="051005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
            });
                #endregion

                #region NO8.通风与空调工程 + 分项

                //送、排风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "送、排风系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）", Code="060101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（非金属、复合材料风管）（Ⅱ）（一）、（二）、（三）", Code="060101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器制作检验批质量验收记录（一）、（二）", Code="060102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送、排风，防排烟，除尘系统）检验批质量验收记录（Ⅰ）（一）、（二）", Code="060103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）、（三）", Code="060103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）、（三）、（四）", Code="060103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风机安装检验批质量验收记录", Code="060104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（风管系统）（一）、（二）", Code="060105", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //防、排烟系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "防、排烟系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）", Code="060201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（非金属、复合材料风管）（（Ⅱ）（一）、（二）、（三））", Code="060201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送、排风，防排烟，除尘系统）检验批质量验收记录（Ⅰ）（一）、（二）", Code="060202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）、（三）", Code="060202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）、（三）", Code="060202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风机安装检验批质量验收记录", Code="060203", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（风管系统）（一）、（二）", Code="060204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060205", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                // 除尘系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "除尘系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）", Code="060301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（非金属、复合材料风管）（Ⅱ）（一）、（二）、（三）", Code="060301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送、排风，防排烟，除尘系统）检验批质量验收记录（Ⅰ）（一）、（二）", Code="060302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）、（三）", Code="060302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）、（三）、（四）", Code="060302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风机安装检验批质量验收记录", Code="060303", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风与空调设备安装检验批质量验收记录（通风系统）（Ⅰ）（一）、（二）", Code="060304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（风管系统）（一）、（二）", Code="060305", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060306", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                // 空调系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "空调系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）", Code="060401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（非金属、复合材料风管）（Ⅱ）（一）、（二）、（三）", Code="060401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器制作检验批质量验收记录（一）、（二）", Code="060402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送、排风，防排烟，除尘系统）检验批质量验收记录（Ⅰ）（一）、（二）", Code="060403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）、（三）", Code="060403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）、（三）、（四）", Code="060403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风机安装检验批质量验收记录", Code="060404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风与空调设备安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）", Code="060404", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（风管系统）（一）、（二）", Code="060406", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060407", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                // 净化空调系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "净化空调系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）", Code="060501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件制作检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器制作检验批质量验收记录（一）、（二）", Code="060502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送、排风，防排烟，除尘系统）（Ⅰ）（一）、（二）", Code="060503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（空调系统）（Ⅱ）（一）、（二）", Code="060503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）、（四）", Code="060503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风机安装检验批质量验收记录", Code="060504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风与空调设备安装检验批质量验收记录（净化空调系统）（Ⅲ）（一）、（二）", Code="060505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（风管系统）（一）、（二）", Code="060506", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060507", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                // 制冷系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "制冷系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷系统安装检验批质量验收记录（一）、（二）、（三）", Code="060601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（管道系统）（一）、（二）", Code="060602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                // 空调水系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "空调水系统",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）", Code="060701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（非金属管道）（Ⅱ）（一）、（二）", Code="060701", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（设备）（Ⅲ）（一）、（二）", Code="060701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热检验批质量验收记录（管道系统）（一）、（二）", Code="060702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（一）、（二）", Code="060703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });
                #endregion

                #region NO9.通风与空调工程（GB 50243-2016） + 分项

                //送风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "送风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（送风系统）（一）、（二）、（三）、（四）", Code="060103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（通风系统）（一）、（二）、（三）", Code="060104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060105", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="旋流风口、岗位送风口、织物（布）风管安装检验批验收质量验收记录", Code="060106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="旋流风口、岗位送风口、织物（布）风管安装检验批验收质量验收记录", Code="060106", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //排风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "排风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（通风系统）（一）、（二）、（三）", Code="060204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="吸风罩及其它空气处理设备安装检验批验收质量验收记录", Code="060206", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="厨房、卫生间排风系统安装检验批验收质量验收记录（排气道系统）（Ⅰ）", Code="060207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="厨房、卫生间排风系统安装检验批验收质量验收记录（排气道组件）（Ⅱ）", Code="060207", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //防、排烟系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "防、排烟系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（防、排烟系统）（一）、（二)、（三）", Code="060303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（通风系统）（一）、（二）（三）", Code="060304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060305", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="排烟风阀（口）、常闭正压风口、防火风管安装检验批验收质量验收记录", Code="060306", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060307", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //除尘系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "除尘系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（除尘系统）（一）、（二）、（三）", Code="060403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（通风系统）（一）、（二）、（三）", Code="060404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060405", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="除尘器与排污设备安装检验批验收质量验收记录", Code="060406", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="吸尘罩安装检验批验收质量验收记录", Code="060407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060408", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060409", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //舒适性空调风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "舒适性空调风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（舒适性空调风系统）（一）、（二）、（三）", Code="060503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（舒适空调系统）（一）、（二）、（三）", Code="060504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（舒适空调系统）（一）、（二）、（三）", Code="060505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（舒适空调系统）（一）、（二）、（三）", Code="060506", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="060507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060508", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060508", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //恒温恒湿空调风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "恒温恒湿空调风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（恒温恒湿空调风系统）（一）、（二）、（三）、（四）", Code="060603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（恒温恒湿空调系统）（一）、（二）、（三）", Code="060604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（恒温恒湿空调系统）（一）、（二）、（三）", Code="060605", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（恒温恒湿空调系统）（一）、（二）、（三）", Code="060606", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="060607", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060608", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060608", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //净化空调风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "净化空调风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060701", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（净化空调风系统）（一）、（二）、（三）、（四）", Code="060703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（洁净室（区）空调系统）（一）、（二）、（三）", Code="060704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（洁净室（区）空调系统）（一）、（二）、（三）", Code="060705", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（洁净室（区）空调系统）（一）、（二）、（三）", Code="060706", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（风管系统与设备）（一）、（二）", Code="060707", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="洁净度测试检验批验收质量验收记录", Code="060708", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060709", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060709", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //地下人防通风系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地下人防通风系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（金属风管）（Ⅰ）（一）、（二）、（三）、（四）", Code="060801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（地下人防系统）（一）、（二）、（三）", Code="060803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与空气处理设备安装检验批质量验收记录（通风系统）（一）、（二）、（三）", Code="060804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="过滤吸收器、防爆波活门、防爆超压排气活门等专用设备安装检验批质量验收记录（滤尘器、过滤吸收器安装）（Ⅰ）（一）、（二）", Code="060805", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="过滤吸收器、防爆波活门、防爆超压排气活门等专用设备安装检验批质量验收记录（密闭阀门安装）（Ⅱ）", Code="060805", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="过滤吸收器、防爆波活门、防爆超压排气活门等专用设备安装检验批质量验收记录（防爆波活门安装）（Ⅲ）", Code="060805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="过滤吸收器、防爆波活门、防爆超压排气活门等专用设备安装检验批质量验收记录（自动排气活门、防爆超压排气活门安装）（Ⅳ）", Code="060805", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="060806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //真空吸尘系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "真空吸尘系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="060901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（非金属风管）（Ⅱ）（一）、（二）、（三）", Code="060901", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管与配件产成品检验批质量验收记录（复合材料风管）（Ⅲ）（一）、（二）、（三）", Code="060901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管部件与消声器产成品检验批质量验收记录（一）、（二）、（三）", Code="060902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风管系统安装检验批质量验收记录（真空吸尘系统）", Code="060903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道快速接口安装检验批质量验收记录", Code="060904", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="风机与滤尘设备安装检验批质量验收记录", Code="060905", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="060906", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="060907", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="060907", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //空调（冷、热）水系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "空调（冷、热）水系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061001", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061002", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗与管内防腐检验批质量验收记录", Code="061003", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="板式热交换器检验批验收质量验收记录", Code="061004", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="辐射板及辐射供热、供冷地埋管安装检验批验收质量验收记录", Code="061005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="热泵机组安装检验批验收质量验收记录", Code="061006", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061007", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061008", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061008", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //冷却水系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "冷却水系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗与管内防腐检验批质量验收记录", Code="061103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="冷却塔与水处理设备安装检验批验收质量验收记录", Code="061104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防冻伴热设备安装检验批验收质量验收记录", Code="061105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061106", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061107", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //冷凝水系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "冷凝水系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061203", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗检验批质量验收记录", Code="061204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统灌水渗漏及排放试验检验批质量验收记录", Code="061205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //土壤源热泵换热系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "土壤源热泵换热系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗检验批质量验收记录", Code="061303", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地表水源换热管道及管网安装检验批质量验收记录", Code="061304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //水源热泵换热系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "水源热泵换热系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗检验批质量验收记录", Code="061403", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地表水源换热管道及管网安装检验批质量验收记录", Code="061404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="除垢设备安装检验批验收质量验收记录", Code="061405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //蓄能（水、冰）系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "蓄能（水、冰）系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调水系统安装检验批质量验收记录（水泵及附属设备）（一）、（二）、（三）", Code="061502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="管道冲洗与关内防腐检验批质量验收记录", Code="061503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="蓄水罐与蓄冰槽、罐安装检验批验收质量验收记录", Code="061504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //压缩式制冷（热）设备系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "压缩式制冷（热）设备系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批质量验收记录（制冷机组及辅助设备）（一）、（二）、（三）", Code="061601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批质量验收记录（制冷剂管道系统）（一）、（二）、（三）", Code="061602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="制冷剂灌注检验批验收质量验收记录", Code="061603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、(三）", Code="061605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //吸收式制冷设备系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "吸收式制冷设备系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批质量验收记录（制冷机组及辅助设备）（一）、（二）、（三）", Code="061701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统真空试验检验批验收质量验收记录", Code="061702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="溴化锂溶液加灌验批验收质量验收记录", Code="061703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="蒸汽管道系统安装检验批验收质量验收记录", Code="061704", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="燃气或燃油设备安装检验批验收质量验收记录", Code="061705", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061706", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061707", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、(三）", Code="061707", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //多联机（热泵）空调系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "多联机（热泵）空调系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批验收质量验收记录（制冷剂管道系统）", Code="061801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批验收质量验收记录（制冷剂管道系统）", Code="061802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批验收质量验收记录（制冷剂管道系统）", Code="061803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调制冷机组及系统安装检验批验收质量验收记录（制冷剂管道系统）", Code="061804", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调冷热（冷却）水系统安装检验批质量验收记录（金属管道）（Ⅰ）（一）、（二）、（三）、（四）", Code="061805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调换热器（凝结）水系统安装检验批质量验收记录（塑料管道）（Ⅱ）（一）、（二）、（三）、（四）", Code="061805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="制冷剂灌注检验批验收质量验收记录", Code="061806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）、（三）", Code="061807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //太阳能供暖空调系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "太阳能供暖空调系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="太阳能集热器安装检验批质量验收记录", Code="061901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="其他辅助能源、换热设备安装检验批质量验收记录（制冷系统安装）（Ⅰ）", Code="061902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="其他辅助能源、换热设备安装检验批质量验收记录（电气与自动控制系统安装）（Ⅱ）", Code="061902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="蓄能水箱、管道及配件安装检验批质量验收记录", Code="061903", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="低温热水地板辐射采暖系统安装检验批质量验收记录", Code="061904", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防腐与绝热施工检验批质量验收记录（管道系统与设备）（一）、（二）", Code="061905", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（单机试运行及调试）（Ⅰ）（一）、（二）", Code="061906", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="工程系统调试检验批质量验收记录（非设计满负荷条件下系统联合试运转及调试）（Ⅱ）（一）、（二）", Code="061906", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //设备自控系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "设备自控系统",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent9.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="温度、压力与流量传感器安装检验批验收质量验收记录（一）、（二）", Code="062001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="执行机构安装调试检验批验收质量验收记录", Code="062002", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防排烟系统水能测试检验批验收质量验收记录", Code="062003", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="自动控制机水系统只能控制软件调试检验批质量验收记录", Code="062004", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                #endregion

                #region NO10.建筑电气工程 + 分项

                //室外电气安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "室外电气安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="变压器、箱式变电所安装检验批质量验收记录表（一）、（二）", Code="070101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="成套配电柜、控制柜（台、箱）和配电箱（盘）安装检验批质量验收记录（一）、（二）、（三）", Code="070102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘和槽盒安装检验批质量验收记录（一）、（二）", Code="070103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管敷设检验批质量验收记录（一）、（二）", Code="070104", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管内穿线和槽盒内敷线检验批质量验收记录", Code="070106", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="普通灯具安装检验批质量验收记录（一）、（二）、（三）", Code="070108", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="专用灯具安装检验批质量验收记录（一）、（二）、（三）", Code="070109", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑物照明通电试运行检验批质量验收记录", Code="070110", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地装置安装检验批质量验收记录（一）、（二）", Code="070111", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //变配电室安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "变配电室安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="变压器、箱式变电所安装检验批质量验收记录表（一）、（二）", Code="070201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="成套配电柜、控制柜（台、箱）和配电箱（盘）安装检验批质量验收记录（一）、（二）、（三）", Code="070202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="母线槽安装检验批质量验收记录（一）、（二）", Code="070203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘和槽盒安装检验批质量验收记录（一）、（二）", Code="070204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070206", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地装置安装检验批质量验收记录（一）、（二）", Code="070207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="变配电室及电气竖井内接地干线敷设检验批质量验收记录", Code="070208", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //供电干线安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "供电干线安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电气设备试验和试运行检验批质量验收记录", Code="070301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="母线槽安装检验批质量验收记录（一）、（二)", Code="070302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘和槽盒安装检验批质量验收记录（一）、（二）", Code="070303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管敷设检验批质量验收记录（一）、（二）", Code="070304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管内穿线和槽盒内敷线检验批质量验收记录", Code="070306", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="变配电室及电气竖井内接地干线敷设检验批质量验收记录", Code="070308", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //电气动力安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "电气动力安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="成套配电柜、控制柜（台、箱）和配电箱（盘）安装检验批质量验收记录（一）、（二）、（三）", Code="070401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电动机、电加热器及电动执行机构检查接线安装检验批质量验收记录", Code="070402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电气设备试验和试运行检验批质量验收记录", Code="070403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘和槽盒安装检验批质量验收记录（一）、（二）", Code="070404", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管敷设检验批质量验收记录（一）、（二）", Code="070405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070406", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管内穿线和槽盒内敷线检验批质量验收记录", Code="070407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070408", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="开关、插座、风扇安装检验批质量验收记录（一）、（二）", Code="070409", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //电气照明安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "电气照明安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="成套配电柜、控制柜（台、箱）和配电箱（盘）安装检验批质量验收记录（一）、（二）、（三）", Code="070501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘和槽盒安装检验批质量验收记录（一）、（二）", Code="070502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管敷设检验批质量验收记录（一）、（二）", Code="070503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管内穿线和槽盒内敷线检验批质量验收记录", Code="070505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="塑料护套线直敷布线安装检验批质量验收记录", Code="070506", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="钢索配线检验批质量验收记录", Code="070507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070508", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="普通灯具安装检验批质量验收记录（一）、（二）、（三）", Code="070509", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="专用灯具安装检验批质量验收记录（一）、（二）、（三）", Code="070510", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="开关、插座、风扇安装检验批质量验收记录（一）、（二）", Code="070511", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑物照明通电试运行检验批质量验收记录", Code="070512", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //自备电源安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "自备电源安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="成套配电柜、控制柜（台、箱）和配电箱（盘）安装检验批质量验收记录（一）、（二）、（三）", Code="070601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="柴油发电机组安装检验批质量验收记录", Code="070602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="UPS及EPS安装检验批质量验收记录表（一）、（二）", Code="070603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="母线槽安装检验批质量验收记录（一）、（二）", Code="070604", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管敷设检验批质量验收记录（一）、（二）", Code="070605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆敷设检验批质量验收记录", Code="070606", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="导管内穿线和槽盒内敷线检验批质量验收记录", Code="070607", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电缆头制作、导线连接和线路绝缘测试检验批质量验收记录（一）、（二）", Code="070608", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地装置安装检验批质量验收记录（一）、（二）", Code="070609", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

            });

                //防雷及接地装置安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "防雷及接地装置安装",
                    ParentId = parent10.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent10.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地装置安装检验批质量验收记录（一）、（二）", Code="070701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防雷引下线及接闪器安装检验批质量验收记录（一）、（二）", Code="070702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑物等电位联结检验批质量验收记录", Code="070703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                #endregion

                #region NO11.智能建筑工程 + 分项

                //智能化集成系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "智能化集成系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设备安装检验批质量验收记录（一）、（二）", Code="080101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="080102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="智能化集成系统接口及系统调试检验批质量验收记录", Code="080103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //信息接入系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "信息接入系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="安装场地检查检验批质量验收记录", Code="080201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //用户电话交换系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "用户电话交换系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="080301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="用户电话交换系统设备安装检验批质量验收记录（一）、（二）", Code="080302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="080303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="用户电话交换系统接口及系统调试检验批质量验收记录", Code="080304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //信息网络系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "信息网络系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设备安装(计算机网络设备安装)检验批质量验收记录（一）、（二）", Code="080401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装（计算机网络软件安装）检验批质量验收记录（一）、（二）", Code="080402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设备安装（网络安全设备安装）检验批质量验收记录（一）、（二）", Code="080403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验（网络安全软件安装）批质量验收记录（一）、（二）", Code="080404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="信息网络系统调试检验批质量验收记录（一）、（二）、（三）", Code="080405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //综合布线系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "综合布线系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="080501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="080502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机柜、机架、配线架安装检验批质量验收记录（一）、（二）", Code="080503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="信息插座安装检验批质量验收记录（一）、（二）", Code="080504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="链路或信道测试检验批质量验收记录", Code="080505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="080506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="综合布线系统调试检验批质量验收记录", Code="080507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080508", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //移动通信室内信号覆盖系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "移动通信室内信号覆盖系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="安装场地检查检验批质量验收记录", Code="080601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //卫星通信系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "卫星通信系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="安装场地检查检验批质量验收记录", Code="080701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //有限电视机卫星电视接收系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "有限电视机卫星电视接收系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="080801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="080802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="有线电视及卫星电视接收系统设备安装检验批质量验收记录（一）、（二）", Code="080803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="080804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="有线电视及卫星电视接收系统调试检验批质量验收记录", Code="080805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //公共广播系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "公共广播系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="080901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="080902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="公共广播系统设备安装检验批质量验收记录（一）、（二）", Code="080903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="080904", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="公共广播系统调试检验批质量验收记录（一）、（二）", Code="080905", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="080906", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //会议系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "会议系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录(一）、（二）", Code="081001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081002", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="会议系统设备安装检验批质量验收记录", Code="081003", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081004", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="会议系统调试检验批质量验收记录（一）、（二）", Code="081005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //信息导引及发布系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "信息导引及发布系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="081101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="信息导引及发布系统显示设备安装检验批质量验收记录", Code="081103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房设备安装检验批质量验收记录", Code="081104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二)", Code="081105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="信息导引及发布系统调试检验批质量验收记录", Code="081106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //时钟系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "时钟系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收（一）、（二）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="时钟系统设备安装检验批质量验收记录（一）、（二）", Code="081203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="时钟系统调试检验批质量验收记录（一）、（二）", Code="081205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //信息化应用系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "信息化应用系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="081301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设备安装检验批质量验收记录（一）、（二）", Code="081303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="信息化应用系统调试检验批质量验收记录", Code="081305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //建筑设备监控系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "建筑设备监控系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="081401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑设备监控系统传感器安装检验批质量验收记录（一）、（二)", Code="081403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑设备监控系统执行器安装检验批质量验收记录（一）、（二)", Code="081404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑设备监控系统控制设备安装检验批质量验收记录（一）、（二)", Code="081405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑设备监控系统中央管理站和操作分站设备安装检验批质量验收记录", Code="081406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="建筑设备监控系统调试检验批质量验收记录（一）、（二）", Code="081408", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //安全技术防范系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "安全技术防范系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="梯架、托盘、槽盒和导管安装检验批质量验收记录（一）、（二）", Code="081601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="安全技术防范系统设备安装检验批质量验收记录", Code="081603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="安全技术防范系统调试检验批质量验收记录（一）、（二）", Code="081605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081608", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //应急响应系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "应急响应系统",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="设备安装检验批质量验收记录（一）、（二）", Code="081701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="软件安装检验批质量验收记录（一）、（二）", Code="081702", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="应急响应系统调试检验批质量验收记录", Code="081703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //机房
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "机房",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房供配电系统检验批质量验收记录", Code="081801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房防雷与接地系统检验批质量验收记录", Code="081802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房空气调节系统检验批质量验收记录（一）、（二）、（三）", Code="081803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房给水排水系统检验批质量验收记录（一）、（二）", Code="081804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房综合布线系统检验批质量验收记录", Code="081805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房监控与安全防范系统检验批质量验收记录", Code="081806", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房消防系统检验批质量验收记录", Code="081807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房室内装饰装修检验批质量验收记录（一）、（二）、（三）", Code="081808", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房电磁屏蔽检验批质量验收记录（一）、（二）、（三）", Code="081809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="机房工程系统调试检验批质量验收记录（一）、（二）", Code="081810", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //防雷接地
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "防雷接地",
                    ParentId = parent11.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent11.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地装置检验批质量验收记录（一）、（二）", Code="081901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="接地线检验批质量验收记录", Code="081902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="等电位联接检验批质量验收记录（一）、（二）", Code="081903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="屏蔽设施检验批质量验收记录", Code="081904", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电涌保护器检验批质量验收记录（一）、（二）", Code="081905", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="线缆敷设检验批质量验收记录（一）、（二）", Code="081906", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="防雷与接地系统调试检验批质量验收记录", Code="081907", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="系统试运行检验批质量验收记录", Code="081908", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                #endregion

                #region NO12.建筑节能工程 + 分项

                //墙体节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "墙体节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="墙体节能检验批质量验收记录（一）、（二）、（三）", Code="090101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //幕墙节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "幕墙节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="幕墙节能检验批质量验收记录（一）、（二）", Code="090201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //门窗节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "门窗节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="门窗节能检验批质量验收记录（一）、（二）", Code="090301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //屋面节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "屋面节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="屋面节能检验批质量验收记录（一）、（二）", Code="090401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //地面节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "地面节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="地面节能检验批质量验收记录（一）、（二）", Code="090501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //采暖节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "采暖节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="采暖节能检验批质量验收记录（一）、（二）、（三）", Code="090601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //通风与空调节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "通风与空调节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="通风与空气调节节能检验批质量验收记录（一）、（二）", Code="090701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //空调与采暖系统冷热源及管网节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "空调与采暖系统冷热源及管网节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="空调与采暖系统冷热源及管网节能检验批质量验收记录（一）、（二）", Code="090801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //配电与照明节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "配电与照明节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="配电与照明节能检验批质量验收记录（一）、（二）", Code="090901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //监测与监控节能
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "监测与监控节能",
                    ParentId = parent12.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="监测与控制系统节能检验批质量验收记录（一）、（二）、（三）", Code="091001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                #endregion

                #region NO13.电梯工程 + 分项

                //电力驱动的曳引式或强制式电梯安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "电力驱动的曳引式或强制式电梯安装",
                    ParentId = parent13.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电力驱动的曳引式或强制式电梯安装设备进场验收检验批质量验收记录", Code="100101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装土建交接检验检验批质量验收记录（一）、（二）、（三）", Code="100102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装驱动主机检验批质量验收记录", Code="100103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装导轨检验批质量验收记录", Code="100104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装门系统检验批质量验收记录", Code="100105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装轿厢检验批质量验收记录", Code="100106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装对重检验批质量验收记录", Code="100107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装安全部件检验批质量验收记录", Code="100108", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装悬挂装置、随行电缆、补偿装置检验批质量验收记录", Code="100109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装电气装置检验批质量验收记录", Code="100110", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装整机安装验收检验批质量验收记录（一）、（二）、（三）", Code="100111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //液压电梯安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "液压电梯安装",
                    ParentId = parent13.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="液压电梯安装设备进场验收检验批质量验收记录", Code="100201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装土建交接检验检验批质量验收记录（一）、（二）、（三）", Code="100202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装液压系统检验批质量验收记录", Code="100203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装导轨检验批质量验收记录", Code="100204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装门系统检验批质量验收记录", Code="100205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装轿厢检验批质量验收记录", Code="100206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装对重检验批质量验收记录", Code="100207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装安全部件检验批质量验收记录", Code="100208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装悬挂装置、随行电缆检验批质量验收记录", Code="100209", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装电气装置检验批质量验收记录", Code="100210", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="电梯安装整机安装验收检验批质量验收记录（一）、（二）、（三）", Code="100211", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

            });

                //自动扶梯、自动人行道安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.建设工程,
                    Name = "自动扶梯、自动人行道安装",
                    ParentId = parent13.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),

                    ParentCode = parent12.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="自动扶梯、自动人行道设备进场验收检验批质量验收记录", Code="100301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="自动扶梯、自动人行道土建交接检验检验批质量验收记录", Code="100302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                new ProjectCategoryTemplate{Id = GuidGenerator.Create(), Type=EnumTemplateType.建设工程, Name="自动扶梯、自动人行道整机安装检验批质量验收记录", Code="100303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
            });

                #endregion
            }
            #endregion

            #region 市政工程
            if (do_市政工程)
            {
                #region 分部

                var Prefix_FB = "SZ"; //Utils.SpellConvertHelper.GetPinyin("分部").Split(";")[1];

                var parent1 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "城市道路工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "001"),
                    ParentCode = ""
                });

                var parent2 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "城市桥梁工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "002"),
                    ParentCode = ""
                });

                var parent3 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "城市隧道工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "003"),
                    ParentCode = ""
                });

                var parent4 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "市政工程边坡及挡护结构工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "004"),
                    ParentCode = ""
                });

                var parent5 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "给排水构筑物工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "005"),
                    ParentCode = ""
                });

                var parent6 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "给排水管道工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "006"),
                    ParentCode = ""
                });

                var parent7 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "城市污水处理厂工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "007"),
                    ParentCode = ""
                });

                var parent8 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "园林绿化工程",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "008"),
                    ParentCode = ""
                });

                var parent9 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "城市污水处理工程（GB50334-2017）",
                    ParentId = Guid.Empty,
                    PType = EnumDocumentPType.分部,
                    Code = GetCodeWithPreFix(Prefix_FB, "009"),
                    ParentCode = ""
                });

                #endregion

                #region NO1.城市道路工程 + 分项

                //路基
                var child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "路基",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程土质路基检验批质量验收记录（一）、（二）", Code="010101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程石质路基检验批质量验收记录", Code="010102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程土石路基检验批质量验收记录", Code="010103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程半挖半填（土质）路基检验批质量验收记录（Ⅰ）（一）、（二）", Code="010104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程半挖半填（石质）路基检验批质量验收记录（Ⅱ）（一）、（二）", Code="010104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程半挖半填（土石混填）路基检验批质量验收记录（Ⅲ）（一）、（二）", Code="010104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程与构筑物连接段路基检验批质量验收记录", Code="010105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //垫层
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "垫层",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程砂砾（碎石）垫层检验批质量验收记录", Code="010201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //基层
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "基层",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程石灰、粉煤灰土底基层检验批质量验收记录（一）、（二）", Code="010301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程级配碎石底基层或基层检验批质量验收记录（一）、（二）", Code="010302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程水泥稳定碎石（砂砾）底基层或基层检验批质量验收记录（一）、（二）", Code="010303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程石灰、粉煤灰稳定碎石（砂砾）底基层或基层检验批质量验收记录（一）、（二）", Code="010304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程沥青稳定碎石（ATB）基层检验批质量验收记录（一）、（二）", Code="010305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //面层
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "面层",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程水泥混凝土路面检验批质量验收记录（一）、（二）", Code="010401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程热拌沥青混合料（HMA）面层检验批质量验收记录（一）、（二）", Code="010402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程沥青玛蹄脂碎石混合料（SMA）面层检验批质量验收记录（一）、（二）", Code="010403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程透层、站层、稀浆封层检验批质量验收记录（一）、（二）", Code="010404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //人行道
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "人行道",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道土基检验批质量验收记录", Code="010501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道基层检验批质量验收记录", Code="010502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道平整层检验批质量验收记录", Code="010503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城镇道路工程人行道（料石）面层检验批质量验收记录（Ⅰ）（一）、（二）", Code="010504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城镇道路工程人行道（预制砌块）面层检验批质量验收记录（Ⅱ）（一）、（二）", Code="010504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城镇道路工程人行道（透水砖）面层检验批质量验收记录（Ⅲ）（一）、（二）", Code="010504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城镇道路工程人行道（沥青混合料）面层检验批质量验收记录（Ⅳ）", Code="010504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道无障碍设施检验批质量验收记录", Code="010505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道路缘石检验批质量验收记录（一）、（二）", Code="010506", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行道树池检验批质量验收记录", Code="010507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //安全防护设施
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "安全防护设施",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施混凝土防撞护栏（混凝土隔离墩）检验批质量验收记录（一）、（二）", Code="010601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施波形钢护栏检验批质量验收记录（一）、（二）", Code="010602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施人行道防护栏杆检验批质量验收记录", Code="010603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施（料石防护柱、防护墩、防护栏杆）检验批质量验收记录", Code="010604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施防眩屏（板）、隔离栅检验批质量验收记录", Code="010605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程安全防护设施防声屏检验批质量验收记录", Code="010606", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //交通标志与标线
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "交通标志与标线",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程交通标志与标线检验批质量验收记录（一）、（二）", Code="010701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程交通标志与标线路面标线检验批质量验收记录（一）、（二）", Code="010702", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程交通标志与标线突起图标检验批质量验收记录", Code="010703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程交通标志与标线轮廓标安装检验批质量验收记录", Code="010704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //道路照明
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "道路照明",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程照明控制系统检验批质量验收记录", Code="010801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程照明县里敷设检验批质量验收记录（一）、（二）", Code="010802", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程照明灯杆、灯具安装检验批质量验收记录", Code="010803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程照明安全保护检验批质量验收记录", Code="010804", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //道路绿化
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "道路绿化",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程中央分隔带绿化检验批质量验收记录", Code="010901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程路侧绿化检验批质量验收记录", Code="010902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程绿化行道树检验批质量验收记录", Code="010903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程边坡绿化检验批质量验收记录", Code="010904", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程互通立交区绿化检验批质量验收记录", Code="010905", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //人行地道
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "人行地道",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行地道混凝土结构检验批质量验收记录（一）、（二）、（三）", Code="011001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程人行地道防水检验批质量验收记录（一）、（二）", Code="011002", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //广场与室外停车场
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "广场与室外停车场",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路功臣广场与室外停车场（料石）面层检验批质量验收记录（Ⅰ）", Code="011101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路功臣广场与室外停车场（预制混凝土砌块）面层检验批质量验收记录（Ⅱ）", Code="011101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路功臣广场与室外停车场（沥青混合料）面层检验批质量验收记录（Ⅲ）", Code="011101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路功臣广场与室外停车场（水泥混凝土）面层检验批质量验收记录（Ⅳ）", Code="011101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //道路排水
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "道路排水",
                    ParentId = parent1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程排水边沟检验批质量验收记录", Code="011201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程盖板涵检验批质量验收记录", Code="011202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程现浇混凝土箱涵检验批质量验收记录", Code="011203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程拱涵检验批质量验收记录", Code="011204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程管涵（倒虹管）检验批质量验收记录", Code="011205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程检查井检验批质量验收记录", Code="011206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市道路工程雨水口及连接支管检验批质量验收记录", Code="011207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                #endregion

                #region NO2.城市桥梁工程 + 分项

                //基坑与扩大基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "基坑与扩大基础",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程无支护基坑检验批质量验收记录", Code="020101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程有支护基坑检验批质量验收记录", Code="020102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程基坑回填检验批质量验收记录", Code="020103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程扩大基础检验批质量验收记录", Code="020104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //桩基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "桩基础",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程机械成孔灌注桩检验批质量验收记录", Code="020201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程人工挖孔灌注桩检验批质量验收记录", Code="020202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程承台检验批质量验收记录", Code="020203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //围堰及沉井
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "围堰及沉井",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程陆上沉井基础检验批质量验收记录", Code="020301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程水上沉井基础检验批质量验收记录", Code="020302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢套箱检验批质量验收记录", Code="020303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢围堰检验批质量验收记录", Code="020304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //支模系统及挂篮
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "支模系统及挂篮",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预制构件模板安装检验批质量验收记录（Ⅰ）", Code="020401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程整体式模板安装检验批质量验收记录（Ⅱ）（一）、（二）", Code="020401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程挂篮安装检验批质量验收记录", Code="020402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程移动模架安装检验批质量验收记录", Code="020403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土短线匹配构件模板安装检验批质量验收记录", Code="020404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //砌体
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "砌体",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程砌体工程检验批质量验收记录（Ⅰ）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程基础砌体检验批质量验收记录（Ⅱ）", Code="020501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程墩台身砌体检验批质量验收记录（Ⅲ）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程侧墙砌体检验批质量验收记录（Ⅳ）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程防护工程浆砌砌体检验批质量验收记录（Ⅴ）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程防护工程干砌片石检验批质量延后记录（Ⅵ）", Code="020501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //混凝土
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "混凝土",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土原材料检验批质量验收记录（Ⅰ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土配合比设计检验批质量验收记录（Ⅱ）", Code="020601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程结构混凝土施工检验批质量验收记录（Ⅲ）", Code="020601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //钢筋
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "钢筋",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢筋原材料检验批质量验收记录（Ⅰ）", Code="020701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢筋加工和连接检验批质量验收记录（Ⅱ）（一）、（二）", Code="020701", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢筋安装检验批质量验收记录（Ⅲ）（一）、（二）", Code="020701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //预应力
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "预应力",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预应力原材料检验批质量验收记录（Ⅰ）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预应力制作与安装检验批质量验收记录（Ⅱ）", Code="020801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程体内预应力检验批质量验收记录（Ⅲ）（一）、（二)、（三）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程压浆和封锚检验批质量验收记录（Ⅳ）", Code="020801", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程体外预应力检验批质量验收记录（Ⅴ）（一）、（二）", Code="020801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //混凝土梁结构预制
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "混凝土梁结构预制",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥T梁预制检验批质量验收记录（Ⅰ）（一）、（二）", Code="020901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥空心板预制检验批质量验收记录（Ⅱ）（一）、（二）", Code="020901", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥小箱梁预制检验批质量验收记录（Ⅲ）（一）、（二）", Code="020901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预制主梁节段钢筋骨架制作安装检验批质量验收记录（Ⅰ）(一）、（二）", Code="020902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预制主梁节段预应力管道及预埋件安装检验批质量验收记录（Ⅱ）", Code="020902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程主梁节段预制检验批质量验收记录（Ⅲ）", Code="020902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程缆索吊装拱桥预制拱圈节段检验批质量验收记录", Code="020903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //钢结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "钢结构",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构原材料（钢材）检验批质量验收记录（Ⅰ）", Code="021001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构原材料（焊接材料）检验批质量验收记录（Ⅱ）", Code="021001", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构原材料（连接用紧固标准件）检验批质量验收记录（Ⅲ）", Code="021001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构原材料（涂装材料）检验批质量验收记录（Ⅳ）", Code="021001", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构焊接（构件焊接）检验批质量验收记录（Ⅰ）（一）、（二）", Code="021002", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构高强度螺栓连接检验批质量验收记录（Ⅱ）", Code="021003", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构焊接（焊钉栓钉焊接）检验批质量验收记录（Ⅱ）", Code="021002", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢零件及钢部件加工（切割）检验批质量验收记录（Ⅰ）", Code="021004", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢零件及钢部件加工（边缘加工）检验批质量验收记录（Ⅱ）", Code="021004", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢零件及钢部件加工（制孔）检验批质量验收记录（Ⅲ）", Code="021004", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢零件及钢部件加工（杆件组装）检验批质量验收记录（Ⅳ）（一）、（二）", Code="021004", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢零件及钢部件加工（矫正和成型）检验批质量验收记录（Ⅴ）（一）、（二）（三）", Code="021004", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢桁梁预拼装检验批质量验收记录（Ⅰ）（一）、（二）", Code="021005", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢板梁预拼装检验批质量验收记录（Ⅱ）（一）、（二）", Code="021005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢箱梁预拼装检验批质量验收记录（Ⅲ）（一）、（二）", Code="021005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢构件单元预拼装检验批质量验收记录（Ⅳ）（一）、（二）", Code="021005", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢桁梁工地拼装和架设检验批质量验收记录（Ⅰ）（一）、（二）", Code="021006", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢钢板梁工地拼装和架设检验批质量验收记录（Ⅱ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢箱梁工地拼装和架设检验批质量验收记录（Ⅲ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢梯道工地拼装和架设检验批质量验收记录（Ⅳ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢墩柱工地拼装和架设检验批质量验收记录（Ⅴ）（一）、（二）", Code="021006", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢梁安装检验批质量验收记录（Ⅵ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢柱安装检验批质量验收记录（Ⅶ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构钢梯道安装检验批质量验收记录（Ⅷ）（一）、（二）", Code="021006", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构防腐涂料涂装检验批质量验收记录（Ⅰ）", Code="021007", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢结构喷铝和喷锌涂装检验批质量验收记录（Ⅱ）", Code="021007", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //桥墩与桥台
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "桥墩与桥台",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程圬工墩台检验批质量验收记录", Code="021101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程现浇混凝土墩（台）身检验批质量验收记录（Ⅰ）", Code="021102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程现浇混凝土柱或双壁墩检验批质量验收记录（Ⅱ）", Code="021102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程装配式混凝土墩、台身安装检验批质量验收记录", Code="021103", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢及钢-混凝土组合柱墩检验批质量验收记录", Code="021104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程台帽与盖梁检验批质量验收记录", Code="021105", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程台背回填检验批质量验收记录", Code="021106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程桥台搭板检验批质量验收记录", Code="021107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //梁式桥梁
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "梁式桥梁",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程预制拼装混凝土简支T梁、空心板和小箱梁桥检验批质量验收记录", Code="021201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢-混凝土结合梁桥施工检验批质量验收记录（一）、（二）", Code="021202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢箱（桁）桥梁检验批质量验收记录", Code="021203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程支架现浇混凝土梁（板）桥施工检验批质量验收记录（一）、（二）", Code="021204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程移动模架现浇混凝土梁桥施工检验批质量验收记录", Code="021205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程挂篮悬臂浇筑混凝土主梁桥检验批质量验收记录", Code="021206", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程节段拼装混凝土梁桥检验批质量验收记录", Code="021207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥（T梁）检验批质量验收记录（Ⅰ）", Code="021208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥（空心板）检验批质量验收记录（Ⅱ）", Code="021208", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程简支连续梁桥（小箱梁）检验批质量验收记录（Ⅲ）", Code="021208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程湿接头、翼缘板现浇带或墩梁固结构造检验批质量验收记录（Ⅳ）", Code="021208", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程桥面连续构造检验批质量验收记录（Ⅴ）", Code="021208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程悬臂浇筑连续刚够桥检验批质量验收记录", Code="021209", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //拱式桥梁
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "拱式桥梁",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程拱桥拱座施工检验批质量验收记录", Code="021301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程拱架上砌筑石拱检验批质量验收记录（Ⅰ）", Code="021302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程拱架上浇筑混凝土拱圈检验批质量验收记录（Ⅱ）", Code="021302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程缆索吊装施工主拱检验批质量验收记录（Ⅲ）", Code="021302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程转体施工主拱检验批质量验收记录（Ⅳ）", Code="021302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程劲性骨架施工主拱检验批质量验收记录（V）（一）、（二）", Code="021302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程悬臂浇筑主拱桥检验批质量验收记录（Ⅵ）（一）、（二）", Code="021302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢管混凝土主拱检验批质量验收记录（Ⅶ）（一）、（二）", Code="021302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程腹孔及悬吊结构检验批质量验收记录", Code="021303", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程中下承式拱桥系杆与吊杆检验批质量验收记录", Code="021304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程拱架检验批质量验收记录（一）、（二）", Code="021305", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //斜拉桥
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "斜拉桥",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土桥塔检验批质量验收记录（Ⅰ）", Code="021401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢桥塔检验批质量验收记录（Ⅱ）", Code="021401", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程斜拉桥混凝土梁检验批质量验收记录（Ⅰ）（一）、（二）", Code="021402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程斜拉桥钢-混凝土结合梁检验批质量验收记录（Ⅱ）（一）、（二）", Code="021402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程斜拉桥钢箱主梁检验批质量验收记录（Ⅲ）（一）、（二）", Code="021402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢桁架主梁检验批质量验收记录（Ⅳ）", Code="021402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程斜拉索检验批质量验收记录", Code="021403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //悬索桥
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "悬索桥",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土索塔检验批质量验收记录（Ⅰ）", Code="021501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢索塔检验批质量验收记录(Ⅱ)", Code="021501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢箱加劲梁（制作）检验批质量验收记录(Ⅰ)(一）、（二）", Code="021502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢箱加劲梁（安装）检验批质量验收记录(Ⅱ）", Code="021502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢桁加劲梁主梁检验批质量验收记录(Ⅲ）", Code="021502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程主缆架设检验批质量验收记录(Ⅰ）", Code="021503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程股和锚头检验批质量验收记录(Ⅱ）", Code="021503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程主缆防护检验批质量验收记录(Ⅲ）", Code="021503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程吊杆（索）和索夹（安装）检验批质量验收记录(Ⅳ）", Code="021503", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程吊杆（索）和索夹（制作）检验批质量验收记录(Ⅴ）（一）、（二）", Code="021503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程主索鞍检验批质量验收记录(Ⅰ）", Code="021504", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程散索鞍检验批质量验收记录(Ⅱ）", Code="021504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程重力式锚锭检验批质量验收记录(Ⅰ）（一）、（二）", Code="021505", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程隧道锚锭检验批质量验收记录(Ⅱ）", Code="021505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //支座和伸缩缝
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "支座和伸缩缝",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程支座安装检验批质量验收记录", Code="021601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程伸缩缝安装检验批质量验收记录", Code="021602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //桥面系及附属设施
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "桥面系及附属设施",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程混凝土桥面板防水层检验批质量验收记录", Code="021701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程水泥混凝土桥面板铺装层检验批质量验收记录（Ⅰ）", Code="021702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程沥青混凝土桥面板铺装层检验批质量验收记录（Ⅱ）", Code="021702", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢桥面防板水粘结层检验批质量验收记录", Code="021703", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程钢桥面板沥青混凝土铺装检验批质量验收记录", Code="021704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程排水设施检验批质量验收记录", Code="021705", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程防撞栏杆及隔离设施检验批质量验收记录（Ⅰ）", Code="021706", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程栏杆安装检验批质量验收记录（Ⅱ）", Code="021706", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程人行道结构检验批质量验收记录", Code="021707", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程缘石和挂板验批质量验收记录", Code="021708", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程避雷装置验批质量验收记录", Code="021709", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程声屏与防眩设施验批质量验收记录", Code="021710", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程航标验批质量验收记录", Code="021711", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程检修设施验批质量验收记录", Code="021712", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程结构监测设施验批质量验收记录", Code="021713", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //照明
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "照明",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程照明检验批质量验收记录", Code="021801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });


                //外观质量
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "外观质量",
                    ParentId = parent2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市桥梁工程外观质量检验批质量验收记录", Code="021901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                #endregion

                #region NO3.城市隧道工程 + 分项

                //洞口及明洞工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "洞口及明洞工程",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞口、明洞开挖检验批质量验收记录", Code="030101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞外排水及明洞防水检验批质量验收记录（一）、（二）", Code="030102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞门混凝土端墙、翼墙检验批质量验收记录（Ⅰ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞门砌体端墙、翼墙检验批质量验收记录（Ⅱ）", Code="030103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞口、明洞边仰坡锚杆喷射混凝土支护检验批质量验收记录（Ⅰ）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞口、明洞边仰坡预制混凝土格构护坡及各式砌体护坡检验批质量验收记录（Ⅱ）", Code="030104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程钢筋制安检验批质量验收记录", Code="030105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程混凝土原材料及配合比检验批质量验收记录（Ⅰ）", Code="030106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程混凝土浇筑检验批质量验收记录（Ⅱ）", Code="030106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程明洞回填检验批质量验收记录", Code="030107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //隧道掘进及初支工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "隧道掘进及初支工程",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程洞身开挖检验批质量验收记录", Code="030201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程锚杆（超前锚杆）检验批质量验收记录", Code="030202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程钢筋网检验批质量验收记录", Code="030203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程喷射混凝土检验批质量验收记录", Code="030204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程钢架（格栅钢架、型钢钢架）检验批质量验收记录", Code="030205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程管棚（超前小导管）检验批质量验收记录", Code="030206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //隧道防排水及二衬工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "隧道防排水及二衬工程",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程钢筋制安检验批质量验收记录", Code="030301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程混凝土原材料及配合比检验批质量验收记录（Ⅰ）", Code="030302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程混凝土浇筑检验批质量验收记录（Ⅱ）", Code="030302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程衬砌模板检验批质量验收记录", Code="030303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程仰拱填充检验批质量验收记录", Code="030304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程注浆填充（壁后注浆）检验批质量验收记录", Code="030305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道洞内排水系统检验批质量验收记录", Code="030306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程施工缝与变形缝处理检验批质量验收记录", Code="030307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程防水板防水检验批质量验收记录", Code="030308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程预注浆堵水检验批质量验收记录", Code="030309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //隧道总体及附属工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "隧道总体及附属工程",
                    ParentId = parent3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程总体质量检验批质量验收记录", Code="030401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰抹灰检验批质量验收记录", Code="030402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰涂料涂饰薄涂料检验批质量验收记录（Ⅰ）", Code="030403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰涂料涂饰厚涂料检验批质量验收记录（Ⅱ）", Code="030403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰涂料涂饰复层涂料施工检验批质量验收记录（Ⅲ）", Code="030403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰溶剂型涂料色漆检验批质量验收记录（Ⅳ）", Code="030403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰溶剂型涂料清漆检验批质量验收记录（Ⅴ）", Code="030403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程装饰饰面板安装检验批质量验收记录", Code="030404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程路面水泥混凝土基层检验批质量验收记录", Code="030405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程路面水泥混凝土面层检验批质量验收记录（Ⅰ）", Code="030406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程路面沥青混凝土面层检验批质量验收记录（Ⅱ）", Code="030406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程附属通风设施检验批质量验收记录（一）、（二）", Code="030407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程附属工程照明设施检验批质量验收记录", Code="030408", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市隧道工程附属电缆槽检验批质量验收记录", Code="030409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region NO4.市政工程边坡及挡护结构工程 + 分项

                //重力式挡墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "重力式挡墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（土质）检验批质量验收记录（Ⅰ）", Code="040101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（石质）检验批质量验收记录（Ⅱ）", Code="040101", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程明挖基坑、基槽检验批质量验收记录", Code="040102", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程钢筋工程检验批质量验收记录（一）、(二)、（三）", Code="040103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程模板工程检验批质量验收记录", Code="040104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程扩大基础检验批质量验收记录（一）、（二）", Code="040105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程桩基础检验批质量验收记录（一）、（二）", Code="040106", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程重力式及衡重式挡墙（砌体墙身）检验批质量验收记录（Ⅰ）（一）、（二）", Code="040107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程重力式及衡重式挡墙（混凝土墙身）检验批质量验收记录（Ⅱ）（一）、（二）", Code="040107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程墙背填筑检验批质量验收记录", Code="040108", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //桩板式挡墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "桩板式挡墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（土质）检验批质量验收记录（Ⅰ）", Code="040201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（石质）检验批质量验收记录（Ⅱ）", Code="040201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边钢筋工程检验批质量验收记录（一）、（二）、（三）", Code="040202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边模板工程检验批质量验收记录", Code="040203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程桩基础检验批质量验收记录（一）、（二）", Code="040204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边桩板式挡土墙（装配式）墙面检验批质量验收记录（Ⅰ）（一）、（二）", Code="040205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边桩板式挡土墙（现浇墙）墙面检验批质量验收记录（Ⅱ）（一）、（二）", Code="040205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程桩板式挡土墙柱（肋）检验批质量验收记录（一）、（二）", Code="040206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程桩锚杆（索）制作、安装与锚固检验批质量验收记录（一）、（二）", Code="040207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索）张拉、注浆与封锚检验批质量验收记录（一）、（二）", Code="040208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程墙背填筑检验批质量验收记录", Code="040209", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //悬臂式及扶壁式挡墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "悬臂式及扶壁式挡墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖(土质）检验批质量验收记录（Ⅰ）", Code="040301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖(石质）检验批质量验收记录（Ⅱ）", Code="040301", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程钢筋工程检验批质量验收记录（一）、（二）、（三）", Code="040302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程模板工程检验批质量验收记录", Code="040303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程明挖基坑、基槽检验批质量验收记录", Code="040304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程扩大基础检验批质量验收记录（一）、（二）", Code="040305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程桩基础检验批质量验收记录（一）、（二）", Code="040306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程悬臂式和扶壁式挡土墙（混凝土墙身）检验批质量验收记录（一）、（二）", Code="040307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索）制作、安装与锚固检验批质量验收记录（一）、（二）", Code="040308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索）张拉、注浆与封锚检验批质量验收记录（一）、（二）", Code="040309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程墙背填筑检验批质量验收记录", Code="040310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //抗滑桩
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "抗滑桩",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程钢筋工程检验批质量验收记录（一）、（二）、（三）", Code="040401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程抗滑桩桩孔检验批质量验收记录", Code="040402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程抗滑桩桩身检验批质量验收记录（一）、（二）", Code="040403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索)制作、安装与锚固检验批质量验收记录（一）、（二）", Code="040404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索）张拉、注浆与封锚检验批质量验收记录（一）、（二）", Code="040405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //边坡防护
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "边坡防护",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（土质）检验批质量验收记录（Ⅰ)", Code="040501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡开挖（石质）检验批质量验收记录（Ⅱ)", Code="040501", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程钢筋工程检验批质量验收记录（一）、（二）、（三）", Code="040502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工锚杆（索）制作、安装与锚固检验批质量验收记录（一）、（二）", Code="040503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程锚杆（索）张拉、注浆与封锚检验批质量验收记录（一）、（二）", Code="040504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程喷护钢筋网片加工及安装检验批质量验收记录", Code="040505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护边坡喷护检验批质量验收记录（一）、（二）", Code="040506", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护（钢筋混凝土）格构护坡检验批质量验收记录（Ⅰ）（一）、（二）", Code="040507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护（砌块）格构护坡检验批质量验收记录（Ⅱ）（一）、（二）", Code="040507", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护砌筑护坡检验批质量验收记录（一）、（二）", Code="040508", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护绿化护坡检验批质量验收记录", Code="040509", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程边坡防护防护网护坡检验批质量验收记录", Code="040510", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //附属设施
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "附属设施",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程附属设施截（排）水沟检验批质量验收记录（一）、（二）", Code="040601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程附属设施盲沟检验批质量验收记录", Code="040602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程附属设施栏杆检验批质量验收记录", Code="040603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程附属设施装饰检验批质量验收记录（一）、（二）", Code="040604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //加筋土挡墙
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "加筋土挡墙",
                    ParentId = parent4.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent4.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程加筋土挡墙扩大基础检验批质量验收记录", Code="040701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程加筋土挡墙带铺设及填土检验批质量验收记录", Code="040702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程加筋土挡墙面板预制检验批质量验收记录", Code="040703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程加筋土挡墙面板安装检验批质量验收记录", Code="040704", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="市政边坡及挡护结构工程加筋土挡墙总体质量检验批质量验收记录", Code="040705", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region NO5.给排水构筑物工程 + 分项

                //土石方与地基基础
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "土石方与地基基础",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程围堰检验批质量验收记录", Code="050101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程基坑开挖检验批质量验收记录", Code="050102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程抗浮锚杆检验批质量验收记录", Code="050103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程基坑回填检验批质量验收记录", Code="050104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //取水与排放构筑物
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "取水与排放构筑物",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程大口井检验批质量验收记录（一）、（二）", Code="050201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程渗渠检验批质量验收记录", Code="050202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程管井检验批质量验收记录", Code="050203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程预制取水头部（制作）检验批质量验收记录（Ⅰ）（一）、（二）", Code="050204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程预制取水头部（沉放）检验批质量验收记录（Ⅱ）", Code="050204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程缆车、浮船式取水构筑物的混凝土及砌体结构检验批质量验收记录（一）、（二）、（三)", Code="050205", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程缆车、浮船式取水构筑物接管车与浮船检验批质量验收记录（一）、（二）", Code="050206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程岸边排放构筑物的出水口检验批质量验收记录（一）、（二）", Code="050207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程水中排放构筑物的出水口检验批质量验收记录", Code="050208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //水处理构筑物
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "水处理构筑物",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程模板检验批质量验收记录", Code="050301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程钢筋检验批质量验收记录", Code="050302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程现浇混凝土检验批质量验收记录", Code="050303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程后张法预应力混凝土检验批质量验收记录", Code="050304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程装配式混凝土结构的构件安装检验批质量验收记录（一）、（二）", Code="050304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程圆形构筑物缠丝张拉预应力混凝土检验批质量验收记录", Code="050305", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程混凝土结构水处理构筑物检验批质量验收记录（一）、（二）", Code="050307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程砖石砌体结构水处理构筑物检验批质量验收记录（一）、（二）", Code="050308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程构筑物变形缝检验批质量验收记录", Code="050309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程塘体结构检验批质量验收记录", Code="050310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程现浇钢筋混凝土、装配式钢筋混凝土管渠检验批质量验收记录", Code="050311", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程砖石砌体管渠的变形缝、砖石砌体结构管渠检验批质量验收记录", Code="050312", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程水处理工艺的辅助构筑物检验批质量验收记录", Code="050313", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程水处理的细部检验批质量验收记录", Code="050314", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //泵房
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "泵房",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程混凝土及砌体结构泵房检验批质量验收记录（一）、（二）", Code="050401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程泵房设备的混凝土基础及闸槽检验批质量验收记录（一）、（二）", Code="050402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程沉井制作检验批质量验收记录", Code="050403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程沉井下沉及封底检验批质量验收记录", Code="050404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //水调蓄构筑物
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "水调蓄构筑物",
                    ParentId = parent5.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent5.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程钢筋混凝土圆筒、框架结构水塔塔身检验批质量验收记录", Code="050501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程钢架、钢圆筒结构水塔塔身检验批质量验收记录", Code="050502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程预制砌块和砖、石砌体结构水塔塔身检验批质量验收记录", Code="050503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程钢丝网水泥、钢筋混凝土倒锥壳水柜和圆筒水柜（制作）检验批质量验收记录（Ⅰ）", Code="050504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水构筑物工程钢丝网水泥、钢筋混凝土倒锥壳水柜和圆筒水柜（吊装）检验批质量验收记录（Ⅱ）", Code="050504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region NO6.给排水管道工程 + 分项

                //土石方与地基处理
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "土石方与地基处理",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沟槽开挖与地基处理检验批质量验收记录", Code="060101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沟槽支护检验批质量验收记录", Code="060102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沟槽回填检验批质量验收记录（一）、（二）", Code="060103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //开槽施工管道主体结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "开槽施工管道主体结构",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程管道基础检验批质量验收记录", Code="060201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程钢管（接口连接）检验批质量验收记录（Ⅰ）", Code="060202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程钢管（内防腐层）检验批质量验收记录（Ⅱ）（一）、（二）", Code="060202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程钢管（外防腐层）检验批质量验收记录（Ⅲ）", Code="060202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程钢管（阴极保护）检验批质量验收记录（Ⅳ）", Code="060202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程球墨铸铁管接口连接检验批质量验收记录", Code="060203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程钢筋混凝土管、预（自）应力混凝土管、预应力钢筋混凝土管接口连接检验批质量验收记录", Code="060204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程化学建材管接口连接检验批质量验收记录", Code="060205", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程管道铺设检验批质量验收记录（一）、（二）", Code="060206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //不开槽施工管道主体结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "不开槽施工管道主体结构",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程工作井检验批质量验收记录（一）、（二）", Code="060301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程顶管管道检验批质量验收记录（一）、（二）", Code="060302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程垂直顶升管道检验批质量验收记录", Code="060303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程盾构管片制作检验批质量验收记录（一）、（二）", Code="060304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程盾构掘进和管片拼装检验批质量验收记录（一）、（二）", Code="060305", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程盾构施工管道的钢筋混凝土二次衬砌检验批质量验收记录", Code="060306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程浅埋暗挖管道的土层开挖检验批质量验收记录", Code="060307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程浅埋暗挖管道的初期衬砌检验批质量验收记录（一）、（二）", Code="060308", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程浅埋暗挖管道的防水层检验批质量验收记录", Code="060309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程浅埋暗挖管道的二次衬砌分项检验批质量验收记录", Code="060310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程定向钻施工管道检验批质量验收记录（一）、（二）", Code="060311", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程夯管施工管道检验批质量验收记录", Code="060312", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //沉管和桥管施工主体结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "沉管和桥管施工主体结构",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沉管基槽浚挖及管基处理检验批质量验收记录", Code="060401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程组对拼装管道（段）的沉放检验批质量验收记录", Code="060402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程预制钢筋混凝土沉放的管节制作检验批质量验收记录（一）、（二）", Code="060403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沉放的预制钢筋混凝土管节接口预制加工（水力压接法）检验批质量验收记录", Code="060404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程预制钢筋混凝土管的土管的沉放检验批质量验收记录", Code="060405", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程沉管的稳管及回填检验批质量验收记录", Code="060406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程桥管管道检验批质量验收记录（一）、（二）", Code="060407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //管道附属构造物
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "管道附属构造物",
                    ParentId = parent6.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent6.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程井室检验批质量验收记录（一）、（二）", Code="060501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程雨水口及支、连管检验批质量验收记录", Code="060502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="给水排水管道工程支墩检验批质量验收记录", Code="060503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region NO7.城市污水处理厂工程 + 分项

                //施工测量
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "施工测量",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程厂区总平面控制检验批质量验收记录", Code="070101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程单位工程平面控制检验批质量验收记录", Code="070102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程高程测量控制检验批质量验收记录", Code="070103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //地基与基础工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "地基与基础工程",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程基坑（开挖）检验批质量验收记录（Ⅰ）", Code="070201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程基坑（回填）检验批质量验收记录（Ⅱ）", Code="070201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程天然地基检验批质量验收记录", Code="070202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程人工地基检验批质量验收记录", Code="070203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程桩基础（沉入桩）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070204", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程桩基础（灌入桩）检验批质量验收记录（Ⅱ）", Code="070205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程桩基础（灌入桩钢筋笼）检验批质量验收记录（Ⅲ）", Code="070206", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程桩基础（沉入桩钢筋骨架）检验批质量验收记录（Ⅳ）", Code="070207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //污水处理构筑物
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "污水处理构筑物",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程钢筋混凝土预制拼装水池检验批质量验收记录（一）、（二）、（三）", Code="070301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程现浇钢筋混凝土水池检验批质量验收记录（一）、（二）", Code="070302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程土建与设备安装连接部位检验批质量验收记录", Code="070303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程水池满水试验检验批质量验收记录", Code="070304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //泵房工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "泵房工程",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程泵房钢筋混凝土结构检验批质量验收记录", Code="070501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程泵房满水试验检验批质量验收记录", Code="070502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //管线工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "管线工程",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程给排水管及工艺管线检验批质量验收记录（一）、（二）、（三）、（四）、（五）", Code="070601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程管线功能性检测检验批质量验收记录", Code="070602", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //沼气罐（柜）和压力容器工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "沼气罐（柜）和压力容器工程",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程沼气柜（罐）的安装检验批质量验收记录", Code="070701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程沼气柜（罐）的焊缝检验批质量验收记录", Code="070702", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程沼气柜（罐）的防腐检验批质量验收记录", Code="070703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程沼气柜（罐）和压力容器的气密性试验检验批质量验收记录", Code="070704", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //机电设备安装工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "机电设备安装工程",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程格栅除污机检验批质量验收记录", Code="070801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程螺旋输送机检验批质量验收记录", Code="070802", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程水泵安装检验批质量验收记录", Code="070803", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程除砂设备安装检验批质量验收记录", Code="070804", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程鼓风装置安装检验批质量验收记录", Code="070805", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程搅拌系统装置安装检验批质量验收记录（一）、（二）", Code="070806", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程曝气设备安装检验批质量验收记录", Code="070807", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程刮泥机、吸刮泥机安装检验批质量验收记录", Code="070808", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程滗水器安装检验批质量验收记录", Code="070809", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程污泥浓缩脱水机安装检验批质量验收记录", Code="070810", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程热交换器系统设备安装检验批质量验收记录", Code="070811", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程启闭机及闸门安装检验批质量验收记录", Code="070812", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程沼气锅炉、沼气发电机、沼气发动机安装检验批质量验收记录", Code="070813", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程开关柜及配电柜（箱）安装检验批质量验收记录", Code="070814", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程电力变压器安装检验批质量验收记录", Code="070815", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程电力电缆、电讯电缆、信号电缆管线检验批质量验收记录（一）、（二）", Code="070816", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程其他设备、装置安装检验批质量验收记录", Code="070817", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},


                });

                //自动控制与监视系统
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "自动控制与监视系统",
                    ParentId = parent7.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent7.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程调节间、执行机构的安装检验批质量验收记录", Code="070901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程信号、连锁及保护装置安装和调试检验批质量验收记录", Code="070902", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程调节器的安装和调试检验批质量验收记录", Code="070903", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程模拟盘检验批质量验收记录", Code="070904", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程计算机控制系统检验批质量验收记录", Code="070905", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程监控室设备安装检验批质量验收记录", Code="070906", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="城市污水处理厂工程仪表设备安装检验批质量验收记录", Code="070907", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                #endregion

                #region NO8.园林绿化工程 + 分项

                //栽植前土地土壤改良工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "栽植前土地土壤改良工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植土检验批质量验收记录", Code="080101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植前场地清理检验批质量验收记录", Code="080102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植土回填及地形造型工程检验批质量验收记录", Code="080103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植土施肥和表层整理检验批质量验收记录", Code="080104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //重盐碱、重黏土地土壤改良
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "重盐碱、重黏土地土壤改良",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程排盐（渗水）管沟隔淋（渗水）层开槽检验批质量验收记录", Code="080201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程排盐（渗水）管敷设检验批质量验收记录", Code="080202", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程隔淋(渗水）层检验批质量验收记录", Code="080203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //设施顶面栽植基层（盘）工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "设施顶面栽植基层（盘）工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植土检验批质量验收记录", Code="080301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施空间绿化耐根穿刺防水层检验批质量验收记录", Code="080302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施空间绿化蓄水层检验批质量验收记录", Code="080303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施空间绿化过滤层检验批质量验收记录", Code="080304", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施障碍性面层栽植基盘检验批质量验收记录", Code="080305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //坡面绿化防护栽植基层工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "坡面绿化防护栽植基层工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程坡面绿化防护栽植层工程检验批质量验收记录", Code="080401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //水湿生植物栽植基层工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "水湿生植物栽植基层工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植土检验批质量验收记录", Code="080501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程水湿生植物栽植槽检验批质量验收记录", Code="080502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //常规栽植
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "常规栽植",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程植物材料检验批质量验收记录（一）、（二）", Code="080601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程栽植穴、槽检验批质量验收记录", Code="080602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程苗木运输和假植检验批质量验收记录", Code="080603", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程苗木修剪检验批质量验收记录", Code="080604", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程树木栽植验批质量验收记录（一)、（二)", Code="080605", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程竹类栽植检验批质量验收记录（一)、（二)", Code="080606", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程草坪和草本地被播种检验批质量验收记录", Code="080607", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程草坪和草本地被分栽检验批质量验收记录", Code="080608", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程铺设草块和草卷检验批质量验收记录", Code="080609", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程运动场地草坪检验批质量验收记录", Code="080610", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程花卉栽植检验批质量验收记录", Code="080611", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //大树栽植
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "大树栽植",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程大树移植（挖掘包装）检验批质量验收记录", Code="080701", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程大树移植（吊装运输）检验批质量验收记录", Code="080702", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程大树移植（栽植）检验批质量验收记录", Code="080703", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //水湿生植物栽植
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "水湿生植物栽植",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程水湿生植物水湿生类栽植检验批质量验收记录（Ⅰ）", Code="080801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程水湿生植物挺水类栽植检验批质量验收记录（Ⅱ）", Code="080801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程水湿生植物浮水类栽植检验批质量验收记录（Ⅲ）", Code="080801", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //设施绿化栽植
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "设施绿化栽植",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施顶面栽植施工检验批质量验收记录", Code="080901", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程设施立面垂直绿化检验批质量验收记录", Code="080902", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //坡面绿化栽植
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "坡面绿化栽植",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程喷播种植检验批质量验收记录", Code="081001", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //施工期养护
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "施工期养护",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程树木支撑检验批质量验收记录（Ⅰ）", Code="081101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程树木浇灌水工程检验批质量验收记录（Ⅱ）", Code="081101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程施工期植物养护施检验批质量验收记录（Ⅲ）", Code="081101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //园路及广场铺设工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "园路及广场铺设工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装碎拼花岗岩面层检验批质量验收记录（Ⅰ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装卵石面层检验批质量验收记录（Ⅱ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装嵌草地面检验批质量验收记录（Ⅲ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装水泥花砖混凝土板块面层检验批质量验收记录（Ⅳ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装冰梅面层检验批质量验收记录（Ⅴ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装花街铺地面层检验批质量验收记录（Ⅵ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装大方砖面层检验批质量验收记录（Ⅶ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装压模面层检验批质量验收记录（Ⅷ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装透水砖面层检验批质量验收记录（Ⅸ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装小青砖（黄道砖）面层检验批质量验收记录（Ⅹ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装自然块石检验批质量验收记录（Ⅺ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装水洗石检验批质量验收记录（Ⅻ）", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程园路、广场地面铺装侧石安装检验批质量验收记录", Code="081202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //假山、叠石、置石工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "假山、叠石、置石工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程假山、叠石、置石地基基础检验批质量验收记录", Code="081201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程假山、叠石、置石山石拉底检验批质量验收记录", Code="081302", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程假山、叠石、置石主体检验批质量验收记录", Code="081303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程假山、叠石、置石收顶检验批质量验收记录", Code="081304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程假山、叠石、置石检验批质量验收记录", Code="081305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //园林埋水工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "园林埋水工程",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属水景管道安装检验批质量验收记录", Code="081401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属水景潜水泵安装检验批质量验收记录", Code="081402", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属水景喷头安装检验批质量验收记录", Code="081403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //园林设施安装
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "园林设施安装",
                    ParentId = parent8.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent8.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属设施座椅（凳）、标牌、果皮箱安装检验批质量验收记录", Code="081501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属设施园林护栏安装检验批质量验收记录", Code="081502", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="园林绿化工程附属设施喷灌喷头安装检验批质量验收记录", Code="081503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                #endregion

                #region NO9.城市污水处理工程（GB50334-2017） + 分项

                //单体构筑物
                var parent9_1 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "单体构筑物",
                    ParentId = parent9.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9.Code
                });

                #region 地基与基础
                //地基与基础
                var parent9_1_1 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "地基与基础",
                    ParentId = parent9_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1.Code
                });

                //地基
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "地基",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="素土地基检验批质量验收记录", Code="070101", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="灰土地基检验批质量验收记录", Code="070102", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="砂和砂石地基检验批质量验收记录", Code="070103", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土工合成材料地基检验批质量验收记录", Code="070104", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（湿陷性黄土场地上素土、灰土地基）检验批质量验收记录（Ⅰ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（湿陷性黄土场地上强夯地基）检验批质量验收记录（Ⅱ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（湿陷性黄土场地上挤密地基）检验批质量验收记录（Ⅲ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（湿陷性黄土场地上预浸水法）检验批质量验收记录（Ⅳ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（强夯地基）检验批质量验收记录（Ⅴ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（注浆地基）检验批质量验收记录（Ⅵ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="软基处理桩地基（预压地基）检验批质量验收记录（Ⅶ）", Code="070105", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //基础工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "基础工程",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="扩展基础（无筋扩展基础）检验批质量验收记录（Ⅰ）", Code="070107", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="扩展基础（钢筋混凝土扩展基础）检验批质量验收记录（Ⅱ）", Code="070107", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="筏形和箱形基础检验批质量验收记录", Code="070108", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（泥浆护壁成孔灌注桩）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（干作业成孔灌注桩）检验批质量验收记录（Ⅱ）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（长螺旋钻孔压灌桩）检验批质量验收记录（Ⅲ）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（沉管灌注桩）检验批质量验收记录（Ⅳ）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（钢桩）检验批质量验收记录（Ⅴ）（一）、（二）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（锚杆静压桩）检验批质量验收记录（Ⅵ）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="桩基础（岩石锚杆基础）检验批质量验收记录（Ⅶ）", Code="070109", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沉井与沉箱检验批质量验收记录（一）、（二）", Code="070110", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //基坑支护
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "基坑支护",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="灌注桩排桩围护结构（灌注桩排桩）检验批质量验收记录（Ⅰ）", Code="070111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="板桩围护结构（预制混凝土板桩围护墙）检验批质量验收记录（Ⅱ）", Code="070112", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="灌注桩排桩围护结构（三轴水泥土搅拌桩截水帷幕）检验批质量验收记录（Ⅲ）", Code="070111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="灌注桩排桩围护结构（渠式切割水泥土连续墙截水帷幕）检验批质量验收记录（Ⅳ）", Code="070111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="灌注桩排桩围护结构（高压喷射注浆截水帷幕）检验批质量验收记录（Ⅴ）", Code="070111", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="板桩围护结构（钢板桩围护墙）检验批质量验收记录（Ⅰ）", Code="070112", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="板桩围护结构（预制混凝土板桩围护墙）检验批质量验收记录（Ⅱ）", Code="070112", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="型钢水泥搅拌墙（内插型钢）检验批质量验收记录（Ⅰ）", Code="070113", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="型钢水泥搅拌墙（三轴水泥土搅拌桩）检验批质量验收记录（Ⅱ）", Code="070113", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="型钢水泥搅拌墙（渠式切割水泥土连续墙）检验批质量验收记录（Ⅲ）", Code="070113", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="地下连续墙（泥浆性能）检验批质量验收记录（Ⅰ）", Code="070114", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="地下连续墙（钢筋笼制作与安装1）检验批质量验收记录（Ⅱ）", Code="070114", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="地下连续墙（地下连续墙成槽及墙体）检验批质量验收记录（Ⅲ）（一）、（二）", Code="070114", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //地下水控制
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "地下水控制",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（降水施工材料）检验批质量验收记录（Ⅰ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（轻型井点施工）检验批质量验收记录（Ⅱ）", Code="070115", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（喷射井点施工）检验批质量验收记录（Ⅲ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（管井施工）检验批质量验收记录（Ⅳ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（轻型井点、喷射井点、真空管井降水运行）检验批质量验收记录（Ⅴ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（减压降水管井运行）检验批质量验收记录（Ⅵ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="降排水（管井封井）检验批质量验收记录（Ⅶ）", Code="070115", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="回灌（回灌施工材料）检验批质量验收记录（Ⅰ）", Code="070116", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="回灌（管井施工）检验批质量验收记录（Ⅱ）", Code="070116", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="回灌（回灌管井运行）检验批质量验收记录（Ⅲ）", Code="070116", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //土方
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "土方",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土方开挖（基坑开挖与回填）检验批质量验收记录（Ⅰ）", Code="070117", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土方开挖（柱基、基坑、基槽土方开挖工程）检验批质量验收记录（Ⅱ）", Code="070117", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土方开挖（挖方场地平整土方开挖工程）检验批质量验收记录（Ⅲ）", Code="070117", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土方回填（柱基、基坑、基槽、管沟、地（路）面基础层填方工程）检验批质量验收记录（Ⅰ）", Code="070118", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土方回填（场地平整填方工程）检验批质量验收记录（Ⅱ）", Code="070118", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="场地平整检验批质量验收记录", Code="070119", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //地下防水
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "地下防水",
                    ParentId = parent9_1_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_1.Code
                });
                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（防水混凝土）检验批质量验收记录（Ⅰ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（水泥砂浆防水层）检验批质量验收记录（Ⅱ）", Code="070120", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（卷材防水层）检验批质量验收记录（Ⅲ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（涂料防水层）检验批质量验收记录（Ⅳ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（塑料防水板防水层）检验批质量验收记录（Ⅴ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（金属板防水层）检验批质量验收记录（Ⅵ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="主体结构防水（膨润土防水材料防水层）检验批质量验收记录（Ⅶ）", Code="070120", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（施工缝）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（变形缝）检验批质量验收记录（Ⅱ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（后浇带）检验批质量验收记录（Ⅲ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（穿墙管）检验批质量验收记录（Ⅳ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{ Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（埋设件）检验批质量验收记录（Ⅴ）", Code="070121", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部结构防水（预留通道接头）检验批质量验收记录（Ⅵ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部构造防水（桩头）检验批质量验收记录（Ⅶ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部构造防水（孔口）检验批质量验收记录（Ⅷ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="细部构造防水（坑、池）检验批质量验收记录（Ⅸ）", Code="070121", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="特殊施工法结构防水（锚喷支护）检验批质量验收记录（Ⅰ）", Code="070122", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="特殊施工法结构防水（地下连续墙）检验批质量验收记录（Ⅱ）", Code="070122", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="特殊施工法结构防水（盾构隧道）检验批质量验收记录（Ⅲ）", Code="070122", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="特殊施工法结构防水（沉井）检验批质量验收记录（Ⅳ）", Code="070122", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="特殊施工法结构防水（逆筑结构）检验批质量验收记录（Ⅴ）", Code="070122", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水工程（渗排水、盲沟排水）检验批质量验收记录（Ⅰ）", Code="070123", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水工程（隧道排水、坑道排水）检验批质量验收记录（Ⅱ）", Code="070123", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水工程（塑料排水板排水）检验批质量验收记录（Ⅲ）", Code="070123", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水工程（预注浆、后注浆）检验批质量验收记录（Ⅰ）", Code="070124", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水工程（结构裂缝注浆）检验批质量验收记录（Ⅱ）", Code="070124", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region 主体工程

                //主体工程
                var parent9_1_2 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "主体工程",
                    ParentId = parent9_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1.Code
                });

                //现浇钢筋混凝土
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "现浇钢筋混凝土",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢筋（加工）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢筋（连接）检验批质量验收记录（Ⅱ）（一）、（二）", Code="070201", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢筋（安装）检验批质量验收记录（Ⅲ）", Code="070201", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="模板安装检验批质量验收记录（一）、（二）、（三）", Code="070202", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="模板安装检验批质量验收记录（一）、（二）", Code="070203", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预应力（制作与安装）检验批质量验收记录（Ⅰ）", Code="070204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预应力（张拉和放张）检验批质量验收记录（Ⅱ）", Code="070204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预应力（灌浆及封锚）检验批质量验收记录（Ⅲ）", Code="070204", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="变形缝检验批质量验收记录", Code="070205", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="表面层检验批质量验收记录", Code="070206", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //预制装配式混凝土
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "预制装配式混凝土",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="构件现场制作检验批质量验收记录", Code="070207", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预制构件安装（无粘结预应力混凝土构筑物）检验批质量验收记录（Ⅱ）", Code="070208", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预制构件安装（预制装配式钢筋混凝土构筑物）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070208", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="变形缝检检验批质量验收记录", Code="070209", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="表面层检检验批质量验收记录", Code="070210", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //砌体
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "砌体",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="砖砌体检验批质量验收记录（一）、（二）", Code="070211", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="石砌体检验批质量验收记录", Code="070212", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="预制砌体工程检验批质量验收记录", Code="070213", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="变形缝检验批质量验收记录", Code="070214", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="表面层检验批质量验收记录（一）、（二）", Code="070215", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //钢结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "钢结构",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构焊接（钢构件焊接）检验批质量验收记录（Ⅰ）（一）、（二）", Code="070216", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构焊接（焊钉、栓钉、焊接）检验批质量验收记录（Ⅱ）", Code="070216", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构栓接（普通紧固件连接）检验批质量验收记录（I）", Code="070217", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构栓接（高强度螺栓连接）检验批质量验收记录（Ⅱ）（一）、（二）", Code="070217", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢零件及钢部件加工检验批质量验收记录（一）、（二）", Code="070218", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（钢构件组装）检验批质量验收记录（Ⅰ）", Code="070219", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（钢构件预拼装）检验批质量验收记录（Ⅱ）", Code="070219", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（单层钢结构安装）检验批质量验收记录（Ⅲ）（一）、（二）", Code="070219", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（多层及高层钢结构安装）检验批质量验收记录（Ⅳ）（一）、（二）", Code="070219", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（钢网架结构制作）检验批质量验收记录（Ⅴ）（一）、（二）", Code="070219", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（钢网架结构拼与安装）检验批质量验收记录（Ⅵ）（一）、（二）", Code="070219", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢结构安装（压型金属板）检验批质量验收记录（Ⅶ）", Code="070219", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="防腐涂料涂装检验批质量验收记录", Code="070220", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="防火涂料涂装检验批质量验收记录", Code="070221", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //土建和设备安装连接部位
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "土建和设备安装连接部位",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="土建与设备连接部位检验批质量验收记录", Code="070222", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                //附属结构
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "附属结构",
                    ParentId = parent9_1_2.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_2.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="计量槽检验批质量验收记录", Code="070223", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="配水井检验批质量验收记录", Code="070224", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排水口检验批质量验收记录", Code="070225", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="扶梯检验批质量验收记录", Code="070226", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="防护栏检验批质量验收记录", Code="070227", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="平台检验批质量验收记录", Code="070228", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="集水槽检验批质量验收记录", Code="070229", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="堰板检验批质量验收记录", Code="070230", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="导流槽检验批质量验收记录", Code="070231", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="支架检验批质量验收记录", Code="070232", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="闸槽检验批质量验收记录", Code="070233", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},

                });

                #endregion

                #region 安装工程

                //安装工程
                var parent9_1_3 = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "安装工程",
                    ParentId = parent9_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1.Code
                });

                //机械设备安装工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "机械设备安装工程",
                    ParentId = parent9_1_3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="格栅设备检验批质量验收记录", Code="070301", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="螺旋输送设备检验批质量验收记录", Code="070302", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="泵类设备检验批质量验收记录", Code="070303", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="除砂设备检验批质量验收记录", Code="070304", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="曝气设备检验批质量验收记录", Code="070305", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="搅拌设备检验批质量验收记录", Code="070306", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="排泥设备检验批质量验收记录", Code="070307", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="曝气生物滤池检验批质量验收记录", Code="070308", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="斜板与斜管检验批质量验收记录", Code="070309", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="过滤设备检验批质量验收记录", Code="070310", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="微、超滤膜设备检验批质量验收记录", Code="070311", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="反渗透膜设备检验批质量验收记录", Code="070312", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="加药设备检验批质量验收记录", Code="070313", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="鼓风、压缩设备检验批质量验收记录", Code="070314", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="臭氧系统设备检验批质量验收记录", Code="070315", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="消毒设备检验批质量验收记录", Code="070316", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="浓缩脱水设备检验批质量验收记录", Code="070317", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="除臭设备检验批质量验收记录", Code="070318", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="滗水器设备检验批质量验收记录", Code="070319", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="闸、阀门设备检验批质量验收记录", Code="070320", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="堰、堰板与集水槽检验批质量验收记录", Code="070321", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="储罐设备检验批质量验收记录", Code="070322", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="巴氏计量槽检验批质量验收记录", Code="070323", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="起重设备检验批质量验收记录", Code="070324", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="污泥泵检验批质量验收记录", Code="070325", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="钢制消化池检验批质量验收记录", Code="070326", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="消化池搅拌设备检验批质量验收记录", Code="070327", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="热交换器设备检验批质量验收记录", Code="070328", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沼气脱硫设备检验批质量验收记录", Code="070329", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沼气柜检验批质量验收记录", Code="070330", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沼气火炬检验批质量验收记录", Code="070331", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沼气锅炉检验批质量验收记录", Code="070332", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="沼气发电机、沼气移动鼓风机、沼气压缩机检验批质量验收记录", Code="070333", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="混料机检验批质量验收记录", Code="070334", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="布料机检验批质量验收记录", Code="070335", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="带式输送机检验批质量验收记录", Code="070336", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="筛分机检验批质量验收记录", Code="070337", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="翻抛机检验批质量验收记录", Code="070338", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="污泥贮仓检验批质量验收记录", Code="070339", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="污泥干化处理设备检验批质量验收记录", Code="070340", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="悬斗输送机检验批质量验收记录", Code="070341", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="干泥料仓检验批质量验收记录", Code="070342", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="消烟、除尘设备检验批质量验收记录", Code="070343", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="污泥焚烧设备检验批质量验收记录", Code="070344", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="设备防腐检验批质量验收记录", Code="070345", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="设备绝热检验批质量验收记录", Code="070346", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //电气设备安装工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "电气设备安装工程",
                    ParentId = parent9_1_3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="隔离开关检验批质量验收记录", Code="070401", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="负荷开关检验批质量验收记录", Code="070402", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="高压熔断器检验批质量验收记录", Code="070403", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电容器和无功功率补偿装置检验批质量验收记录", Code="070404", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电力变压器安装检验批质量验收记录", Code="070405", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电动机检验批质量验收记录", Code="070406", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="开关柜、控制盘（柜、箱）检验批质量验收记录", Code="070407", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="不间断电源检验批质量验收记录", Code="070408", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电缆桥架检验批质量验收记录", Code="070409", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电缆线路检验批质量验收记录", Code="070410", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电缆终端头检验批质量验收记录", Code="070411", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电缆接头制作检验批质量验收记录", Code="070412", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电气配管检验批质量验收记录", Code="070413", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电气配线检验批质量验收记录", Code="070414", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="电气照明检验批质量验收记录", Code="070415", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="接地装置、防雷设施及等电位联接检验批质量验收记录", Code="070416", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="滑触线和移动式软电缆检验批质量验收记录", Code="070417", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="起重机电气设备检验批质量验收记录", Code="070418", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                //自动控制、仪表安装工程
                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "自动控制、仪表安装工程",
                    ParentId = parent9_1_3.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1_3.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="中心控制系统检验批质量验收记录", Code="070501", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="控制（仪表）盘、柜、箱检验批质量验收记录", Code="070502", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="仪表设备检验批质量验收记录", Code="070503", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="监控设备检验批质量验收记录", Code="070504", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="执行机构调节阀检验批质量验收记录", Code="070505", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #region 管线安装工程


                child = projectCategoryTemplateRepository.Insert(new ProjectCategoryTemplate
                {
                    Id = GuidGenerator.Create(),
                    Type = EnumTemplateType.市政工程,
                    Name = "管线安装工程",
                    ParentId = parent9_1.Id,
                    PType = EnumDocumentPType.分项,
                    Code = GuidGenerator.Create().ToString(),
                    ParentCode = parent9_1.Code
                });

                projectCategoryTemplateRepository.BatchInsert(new List<ProjectCategoryTemplate> {
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="工艺管线检验批质量验收记录（Ⅰ）（一）、（二）、（三）", Code="070601", ParentId=child.Id, PType=EnumDocumentPType.子检验批项 , ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="配套管线检验批质量验收记录（Ⅱ）", Code="070601", ParentId=child.Id , PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},
                    new ProjectCategoryTemplate{  Id = GuidGenerator.Create(), Type=EnumTemplateType.市政工程, Name="功能性试验与联合试运转检验批质量验收记录（一）、（二）", Code="070602", ParentId=child.Id, PType=EnumDocumentPType.子检验批项, ParentCode=child.Code},

                });

                #endregion

                #endregion
            }
            #endregion
        }

        /// <summary>
        /// 工程类型（检验批）模板 - 分页数据集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<ProjectCategoryTemplateDto>> QueryProjectCategoryTemplatePagedList(QueryProjectCategoryTemplateInput input)
        {
            var query = projectCategoryTemplateRepository.GetAll()
                .WhereIf(input.ParentId.HasValue, x => x.ParentId == input.ParentId)
                .WhereIf(input.PType.HasValue, x => x.PType == input.PType)
                .WhereIf(!input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(input.Filter) || x.Code.Contains(input.Filter));

            //var result = ObjectMapper.Map<List<ProjectCategoryTemplateDto>>(await query.OrderBy(input.Sorting).PageByAsync(input));

            //return new PagedResultDto<DocumentLibrarysDto>(query.Count(),  result?.OrderBy(x => x.Type).ToList());

            var result = await query.OrderBy(x => x.ParentId).PageByAsync(input);

            return new PagedResultDto<ProjectCategoryTemplateDto>(query.Count(),
                ObjectMapper.Map<List<ProjectCategoryTemplateDto>>(result));
        }

        /// <summary>
        /// 绑定构件
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<string[]> CreateProjectProperties(CreateProjectPropertiesInput input)
        {
            // var entity = ObjectMapper.Map<ProjectProperties>(input);
            if (input.PropertyIds == null || input.PropertyIds.Length <= 0 || input.DocumentId == Guid.Empty) throw new UserFriendlyException("绑定参数不能为空, 请检查参数");
            List<string> pids = await projectPropertiesRepository.GetAll().Where(x => x.DocumentId == input.DocumentId).Select(x => x.PropertyId).ToListAsync();
            List<ProjectProperties> propertys = new List<ProjectProperties>();
            var oldPropertys = await projectPropertiesRepository.GetAllListAsync(x => x.DocumentId == input.DocumentId);

            var propIds = input.PropertyIds.ToList();

            propIds.RemoveAll(x => oldPropertys.Any(old => old.PropertyId == x));

            if (propIds.Count <= 0) return oldPropertys.Select(x => x.PropertyId).ToArray();

            foreach (var propertyid in propIds)
            {
                var item = new ProjectProperties
                {
                    Id = Guid.NewGuid(),
                    TenantId = 1,
                    DocumentId = input.DocumentId,
                    ModelGroupId = input.ModelGroupId,
                    ProjectId = input.ProjectId,
                    PropertyId = propertyid,
                    CreatorUserId = UserManager.PrimaryId,
                    CreationTime = DateTime.Now
                };

                propertys.Add(item);
            }

            BulkInsert<ProjectProperties>.BulkEntityInsert(propertys,
                _ => _.Id,
                _ => _.TenantId,
                _ => _.CreationTime,
                _ => _.DocumentId,
                _ => _.ModelGroupId,
                _ => _.ProjectId,
                _ => _.PropertyId,
                _ => _.CreatorUserId
                );

            //foreach (var propertyid in input.PropertyIds)
            //{
            //    var old = await projectPropertiesRepository.FirstOrDefaultAsync(x => x.PropertyId == propertyid && x.DocumentId == input.DocumentId);

            //    if (old != null)
            //        await projectPropertiesRepository.DeleteAsync(old);

            //    old = new ProjectProperties
            //    {
            //        DocumentId = input.DocumentId, 
            //        ModelGroupId = input.ModelGroupId, 
            //        ProjectId = input.ProjectId, 
            //        PropertyId = propertyid, 
            //        CreatorUserId = UserManager.PrimaryId
            //    };
            //    var entity = await projectPropertiesRepository.InsertAsync(old);

            //    pids.Add(entity.PropertyId);

            //    var result = ObjectMapper.Map<ProjectPropertiesDto>(entity);

            //    result.DocumentDto = ObjectMapper.Map<DocumentLibrarysDto>(await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == result.DocumentId));
            //}

            pids = propIds.Union(oldPropertys.Select(x => x.PropertyId).ToList()).ToList();

            return pids.Distinct().ToArray();
        }

        /// <summary>
        /// 移动构件
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<string[]> ModifyProjectPropertyies(ModifyProjectPropertiesInput input)
        {
            if (input.PropertyIds == null || input.PropertyIds.Length <= 0 || input.DocumentId == Guid.Empty) throw new UserFriendlyException("绑定参数不能为空, 请检查参数");

            List<string> pids = new List<string>();

            if (input.DocumentId == input.OldDocumentId)
                return pids.ToArray();

            if (input.OldDocumentId != Guid.Empty)
            {
                pids = await projectPropertiesRepository.GetAll().Where(x => x.DocumentId == input.OldDocumentId).Select(x => x.PropertyId).ToListAsync();

                //删除原有绑定
                await projectPropertiesRepository.DeleteAsync(x => input.PropertyIds.Contains(x.PropertyId) && x.DocumentId == input.OldDocumentId);

                pids.RemoveAll(x => input.PropertyIds.Contains(x));
            }

            //添加新绑定
            await CreateProjectProperties(input);

            return pids.ToArray();
        }

        /// <summary>
        /// 删除绑定构件
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<string[]> BatchRemoveProperties(CreateProjectPropertiesInput input)
        {
            if (input.PropertyIds == null || input.PropertyIds.Length <= 0 || input.DocumentId == Guid.Empty) throw new UserFriendlyException("绑定参数不能为空, 请检查参数");

            //List<string> pids = await projectPropertiesRepository.GetAll().Where(x => x.DocumentId == input.DocumentId).Select(x => x.PropertyId).ToListAsync();

            //foreach (var propertyid in input.PropertyIds)
            //{
            //    var old = await projectPropertiesRepository.FirstOrDefaultAsync(x => x.PropertyId == propertyid && x.DocumentId == input.DocumentId);

            //    if (old != null)
            //    {
            //        await projectPropertiesRepository.DeleteAsync(old);
            //    }
            //}
            await projectPropertiesRepository.BatchDeleteAsync(x => input.PropertyIds.Contains(x.PropertyId) && x.DocumentId == input.DocumentId);

            //pids.RemoveAll(x => input.PropertyIds.Contains(x));

            return null;
        }

        /// <summary>
        /// 获取模型绑定的构件资料数据：分页
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<ProjectPropertiesDto>> QueryProjectPropertiesPagedList(QueryProjectPropertiesInput input)
        {
            var query = projectPropertiesRepository.GetAll()
              .WhereIf(input.ModelGroupId != Guid.Empty, x => x.ModelGroupId == input.ModelGroupId)
              .WhereIf(input.ProjectId != Guid.Empty, x => x.ProjectId == input.ProjectId)
              .WhereIf(!input.PropertyId.IsNullOrWhiteSpace(), x => x.PropertyId == input.PropertyId)
              .WhereIf(input.DocumentId != Guid.Empty, x => x.DocumentId == input.DocumentId);

            var result = await query.OrderByDescending(x => x.CreationTime).PageByAsync(input);

            var list = ObjectMapper.Map<List<ProjectPropertiesDto>>(result);

            foreach (var entity in list)
            {
                entity.DocumentDto = ObjectMapper.Map<DocumentLibrarysDto>(await documentLibrarysRepository.FirstOrDefaultAsync(x => x.Id == entity.DocumentId));
            }

            return new PagedResultDto<ProjectPropertiesDto>(query.Count(),
                 list);
        }

        /// <summary>
        /// 获取构件绑定的检验批标识
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<dynamic> QueryDocumentIdsByProperties(QueryDocumentIdsByPropertiesInput input)
        {
            if (input.ProjectId == Guid.Empty) throw new UserFriendlyException("项目标识必填");

            if (input.PropertyIds == null || input.PropertyIds.Length <= 0) throw new UserFriendlyException("请填写要筛选哪些构件项");

            var queryDocument = documentLibrarysRepository.GetAll().Where(x => x.PrimaryId == input.ProjectId);
            var queryProperty = projectPropertiesRepository.GetAll().Where(x => x.ProjectId == input.ProjectId && input.PropertyIds.Contains(x.PropertyId));

            return await (from property in queryProperty
                          join document in queryDocument on property.DocumentId equals document.Id into document_join
                          from doc_join in document_join.DefaultIfEmpty()
                          group doc_join by property into gg
                          select new
                          {
                              PropertyId = gg.Key.PropertyId,
                              DocumentIds = gg.Select(x => x.Id).ToArray()
                          }).ToListAsync();
        }

        /// <summary>
        /// 检验批资料库
        /// </summary>
        /// <param name="input"></param>
        /// <param name="disableFilter">是否禁用软删除</param>
        /// <param name="isFolder">是否查询文件夹</param>
        /// <param name="isRoot">是否展示根节点</param>
        /// <returns></returns>
        private async Task<PagedResultDto<DocumentLibrarysDtoForCheckP>> GetPagedListForCheckP(QueryDocumentLibrarysInput input, bool disableFilter, bool isFolder = false, bool isRoot = false)
        {
            var query = documentLibrarysRepository.GetAll()
                .WhereIf(input.PrimaryId != Guid.Empty, x => x.PrimaryId == input.PrimaryId)
                .WhereIf(input.PrimaryId1.HasValue && input.PrimaryId1 != Guid.Empty, x => x.PrimaryId1 == input.PrimaryId1)
                .WhereIf(input.ParentId != Guid.Empty, x => x.ParentId == input.ParentId)
                .WhereIf(isRoot && input.ParentId == Guid.Empty, x => !x.ParentId.HasValue || x.ParentId == Guid.Empty)
                //.WhereIf(input.ParentId == Guid.Empty,  x => !x.ParentId.HasValue || x.ParentId == Guid.Empty)
                .WhereIf(isFolder, x => x.IsFolder) //x => x.FileId == null)
                .WhereIf(!input.ShowFloder, x => !x.IsFolder) //x => x.FileId != null)
                .WhereIf(disableFilter, x => x.IsDeleted == disableFilter)
                .WhereCreationTimeRange1(input.CreationTimeRange)
                .WhereIf(!input.Filter.IsNullOrWhiteSpace(), x => x.Name.Contains(input.Filter));

            //绑定构件
            var queryProperty = projectPropertiesRepository.GetAll()
                .WhereIf(input.PrimaryId != Guid.Empty, x => x.ProjectId == input.PrimaryId);

            //if (input.PropertiesIds != null && input.PropertiesIds.Length > 0)
            //{
            //    query = query.Where(x => queryProperty.Any(p => p.DocumentId == x.Id && input.PropertiesIds.Contains(p.PropertyId)));
            //}

            //节点类型
            if (input.PType.HasValue && input.PType > 0)
            {
                query = query.Where(x => x.PType == input.PType);
            }
            else if (input.PTypeArr != null && input.PTypeArr.Length > 0)
            {
                query = query.Where(x => input.PTypeArr.Contains((int)x.PType));
            }

            var queryDocument = await query.OrderBy(input.Sorting).PageByAsync(input);

            var result = ObjectMapper.Map<List<DocumentLibrarysDtoForCheckP>>(queryDocument);

            var userIdList = queryDocument.Select(x => x.CreatorUserId).ToList();

            var userList = UserManager.Users.Where(x => userIdList.Contains(x.PrimaryId))?.ToList();
            foreach (var item in result)
            {
                //if (item.Id == new Guid("df22e5eb-f40b-49da-abc9-f2291136d32e"))
                //{
                //    var arr= queryProperty.Where(x => x.DocumentId == item.Id).Select(x => x.PropertyId).ToArray();
                //}
                item.CreatorUserName = userList.FirstOrDefault(x => x.PrimaryId == item.CreatorUserId)?.Name;
                if (item.PType == EnumDocumentPType.验收节点)
                {
                    item.PropertyIds = queryProperty.Where(x => documentLibrarysRepository.GetAll().Where(document => document.PrimaryId1 == item.Id).Any(doc => doc.Id == x.DocumentId)).Select(x => x.PropertyId).ToArray();
                }
                else if (item.PType == EnumDocumentPType.子检验批项)
                {
                    item.PropertyIds = queryProperty.Where(x => x.DocumentId == item.Id).Select(x => x.PropertyId).ToArray();
                }
            }
            return new PagedResultDto<DocumentLibrarysDtoForCheckP>(query.Count(), result);
        }

        /// <summary>
        /// 检验批文件:检索所有文件夹/文件（默认包含所有节点文件/文件夹目录）
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<DocumentLibrarysDtoForCheckP>> QueryPagedListForCheckP(QueryDocumentLibrarysInput input)
        {
            return await GetPagedListForCheckP(input, false);
        }

        /// <summary>
        /// 检验批目录-分页数据集合
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<PagedResultDto<FolderDtoForCheckP>> QueryFloderPagedListForCheckP(QueryDocumentLibrarysInput input)
        {
            return ObjectMapper.Map<PagedResultDto<FolderDtoForCheckP>>(await GetPagedListForCheckP(input, false, true));
        }

        /// <summary>
        /// 获取已绑定的模板标识
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public async Task<dynamic> QueryTemplateIdsByPrimaryId1(EntityDto<Guid> input)
        {
            if (input.Id == Guid.Empty) return new Guid[] { }.ToArray();
            var result = await documentLibrarysRepository.GetAllListAsync(x => x.PrimaryId1 == input.Id && x.TemplateId != Guid.Empty);
            return result.Select(x => x.TemplateId).ToArray();
        }

        #endregion
    }
}
